KR100249502B1 - Apparatus and method of transfer contol protocol and protocol acceleration - Google Patents
Apparatus and method of transfer contol protocol and protocol acceleration Download PDFInfo
- Publication number
- KR100249502B1 KR100249502B1 KR1019970073018A KR19970073018A KR100249502B1 KR 100249502 B1 KR100249502 B1 KR 100249502B1 KR 1019970073018 A KR1019970073018 A KR 1019970073018A KR 19970073018 A KR19970073018 A KR 19970073018A KR 100249502 B1 KR100249502 B1 KR 100249502B1
- Authority
- KR
- South Korea
- Prior art keywords
- transmission control
- protocol
- control protocol
- internet protocol
- frame
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/16—Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L69/00—Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
- H04L69/30—Definitions, standards or architectural aspects of layered protocol stacks
- H04L69/32—Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
- H04L69/322—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
- H04L69/326—Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the transport layer [OSI layer 4]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer And Data Communications (AREA)
Abstract
1. 청구범위에 기재된 발명이 속하는 기술분야1. TECHNICAL FIELD OF THE INVENTION
본 발명은 LAN 카드의 TCP/IP 가속 장치 및 방법에 관한 것임.The present invention relates to an apparatus and method for TCP / IP acceleration of a LAN card.
2. 발명이 해결하고자하는 기술적 요지2. The technical gist of the invention to solve
본 발명은 이더넷 LAN 환경에서 사용되는 LAN의 내부에 이더 타입에 따른 상위 계층 패킷의 분류기능과 TCP/IP의 일부기능을 내장하여, 고속 환경하에서 통신에 응용될 수 있는 TCP/IP 가속 장치 및 방법을 제공하는데 그 목적이 있다.The present invention is a TCP / IP acceleration apparatus and method that can be applied to communication in a high-speed environment by embedding the upper layer packet classification function according to Ether type and some functions of TCP / IP in a LAN used in an Ethernet LAN environment. The purpose is to provide.
3. 발명의 해결 방법의 요지3. Summary of the Solution of the Invention
본 발명은 입력된 데이터의 이더 프레임 형태를 구분하여 제어신호 및 인터넷 프로토콜 처리를 위한 정보를 출력하는 전방 처리수단; 전송 제어 프로토콜 처리를 위한 정보 및 동작 완료를 위한 신호를 출력하는 인터넷 프로토콜 처리수단; 및 동작 완료를 위한 신호 및 상태 레지스터 비트값을 출력하는 전송 제어 프로토콜 처리수단을 포함한다.The present invention comprises front processing means for classifying an Ether frame type of input data and outputting control signal and information for Internet protocol processing; Internet protocol processing means for outputting information for processing the transmission control protocol and a signal for completing the operation; And transmission control protocol processing means for outputting a signal for completing the operation and a status register bit value.
4. 발명의 중요한 용도4. Important uses of the invention
본 발명은 고속의 LAN 환경에서 주요 병목이 되고 있는 TCP/IP 동작을 고속화하는데 이용됨.The present invention is used to speed up TCP / IP operation, which is a major bottleneck in high-speed LAN environments.
Description
본 발명은 LAN(Local Area Network) 환경하에서 이더넷(ETHERNET) 분류 기능을 갖는 전송 제어 프로토콜/인터넷 프로토콜(TCP/IP : Transport Control Protocol/Internet Protocol) 가속 장치에 관한 것으로서, 특히 TCP/IP 동작중 일부/전체 동작을 LAN 내부에 하드웨어적으로 채용하여 고속의 LAN 환경에서 주요 병목이 되고 있는 TCP/IP 동작을 고속화하기 위한 TCP/IP 가속 장치에 관한 것이다.The present invention relates to a transport control protocol / Internet protocol (TCP / IP) acceleration device having an Ethernet (ETHERNET) classification function in a local area network (LAN) environment, and in particular, part of TCP / IP operation. The present invention relates to a TCP / IP accelerator for speeding up TCP / IP operation, which is a major bottleneck in a high-speed LAN environment by employing the entire operation in a hardware.
도 1은 일반적인 근거리 통신망(LAN : Local Area Network) 카드의 블록도이다.1 is a block diagram of a typical local area network (LAN) card.
도 1에 도시한 바와 같이, 캐리어(Carrier)가 감지되면 PLS(Physical Layer Signal)계층에서 제공하는 수신 클럭을 사용하여 수신되는 비트 열은 직/병렬 쉬프트 레지스터(60)와 CRC 생성기/검사기(70)로 동시에 전달된다. 직/병렬 쉬프트 레지스터(60)는 프리앰블(Preamble) 비트 열로 시작되는 비트 열에서 시작 프레임 경계기호(SFD : Starting Frame Dilimeter)를 감지한다. 시작 프레임 경계기호로부터 추출된 바이트 경계 및 프레임의 시작 부분 정보를 사용하여, 매 8개의 수신 클럭 마다 한 바이트씩 송수신 선입선출부(FIFO)(110) 및 주소 인식 로직(90)으로 동일하게 전달된다. 주소 검색 로직(90)으로 전달된 6바이트의 목적지 주소는 유효성을 검정 받는다. 만약에 틀리면, 이 정보를 프로토콜 PLA(Physical Layer Attachment)(120)에 보고하여 이미 송수신 선입선출부(FIFO)(110)에 저장된 6바이트의 데이타를 클리어시키고 더 이상의 추가 저장을 중단하도록 한다. 반대로, 주소 영역이 적합하면 송수신 선입선출부(FIFO)(110)에 저장되었던 목적지 주소 영역 부터의 바이트열은 내부 버스(900)를 통하여 카드 내의 로컬 공유 메모리(30)로 이동된다. 이동의 시작과 동시에 TCP/IP 가속기(200)의 동작이 개시된다. 이때, 프레임의 종류에 따라 Ether Type을 지시하는 위치가 다르므로 이를 고려하여 처리한다. 즉, 프레임의 시작 위치에서 Ether Type을 지시하는 위치까지의 거리가 IEEE 802.3 표준에서는 20바이트가 떨어져 있고, DIX 2.0 Ether프레임에서는 12바이트가 떨어져 있다. 이 두 가지 프레임을 구분하는 방법은 IEEE 802.3의 12번째 바이트가 프레임의 길이를 나타내는 부분으로 항상 0x05FF보다 작은 값을 갖는 반면 EtherType은 0x0600보다 크다는 점에 착안하여 분류한다.As shown in FIG. 1, when a carrier is detected, a bit string received using a receive clock provided by a physical layer signal (PLS) layer is divided into a serial /
TCP/IP 가속기(130)는 분류된 프레임이 IP인 경우 해당되는 IP 기능부(220)의 동작을 개시하는 동시에, TCP 프레임인지의 여부를 조사하여 TCP인 경우, TCP 기능부(220)의 동작을 개시한다. 송수신 선입선출부(FIFO)(110)에서 로컬 메모리(30)로 데이타가 전송 완료되면, MAC(Medium Access Control)제어기에서 MAC 드라이버로 인터럽트를 발생시킨다. 이 인터럽트에 의해 주 프로세서(50)는 수신 데이타 열은 물론, 프레임 검사 순서열(FCS : Frame Check Sequence)의 결과를 알리는 레지스터와 이더 프레임(Ether Frame) 분류 결과 및 IP/TCP 처리 결과를 포함하고 있는 레지스터로부터 필요한 값을 읽을 수 있게 된다.When the classified frame is IP, the TCP /
CSMA/CD(Carrier Sense Multiple Access/Collision Detect)동작에 따라 이더넷 LAN에 데이터 프레임이 전송되면 이 프레임을 수신한 LAN 제어기는 자신에게 송신된 것이 확인된 프레임에 대해, 목적지 주소 영역부터 로컬 메모리에 저장한다. 마지막으로 프레임 검사 순서열(FCS : Frame Check Sequence) 필드 부분을 검사한 후, 목적지 주소부터 데이터 부분의 마지막까지의 길이 정보와 함께 수신 완료 신호를 매체 접속 제어(MAC : Medium Access Control) 드라이버에 인터럽트 방식으로 보고한다. 이에 대하여, MAC 드라이버는 이더 타입(EtherType) 값에 적합한 상위 계층이 사용하는 커널 메모리에 이 MAC 프레임의 정보 영역만을 이동시키고, 이 사실을 상위 계층에 알린다.When data frame is transmitted to Ethernet LAN according to Carrier Sense Multiple Access / Collision Detect (CSMA / CD) operation, the LAN controller receiving the frame stores the frame from the destination address area to local memory for the frame confirmed to be sent to it. do. Finally, after checking the frame check sequence (FCS) field part, interrupt the reception completion signal to the medium access control (MAC) driver along with the length information from the destination address to the end of the data part. Report by way. In contrast, the MAC driver moves only the information area of the MAC frame to the kernel memory used by the upper layer suitable for the EtherType value, and informs the upper layer of this fact.
정보 영역을 전달 받은 상위 계층이 IP인 경우 이 계층은 다시 데이터의 오류를 검출하는 체크섬 과정을 수행하고 TCP, 사용자 디이터그램 프로토콜(UDP : User Datagram Protocol)등의 상위 프로토콜 종류를 분류하여 해당 프로토콜을 수행시킨다. 이때, TCP인 경우 수신 데이터에 대한 체크섬 및 상태 머신 동작이 수행된다. 이와 같이, 이더 프레임(Ether Frame)을 수신하는 과정에서 LAN의 로컬 메모리에 수신된 프레임이 주메모리로 이동되는 시간 사이에 존재하는 Ether Type 분류를 위한 시간 지연 뿐만 아니라, 주 메모리 내에서 IP의 체크섬 과정 및 부 프로토콜 분류 과정에서 생기는 시간 지연, 그리고 TCP의 체크섬 계산 과정은 모두 소프트웨어적으로 수행됨으로써, 고속 데이터 처리를 수행하지 못하였고, 또한 송신시에도 TCP/IP 패킷은 과정을 가지므로 데이터의 길이가 길수록 전송 지연이 커지는 문제점이 있었다.If the upper layer that receives the information area is IP, this layer performs the checksum process to detect data errors and classifies the upper protocol types such as TCP and User Datagram Protocol (UDP). Is performed. At this time, in the case of TCP, a checksum and a state machine operation on the received data are performed. As such, in addition to the time delay for classifying the Ether Type between the time when the frame received in the local memory of the LAN is moved to the main memory in the process of receiving the Ether frame, the checksum of the IP in the main memory. The time delay in the process and the sub-protocol classification process and the checksum calculation process of TCP are all performed in software, so that the high-speed data processing cannot be performed, and the TCP / IP packet has a process during transmission. There was a problem that the longer the transmission delay.
따라서, 본 발명은 상기한 바와 같은 종래의 문제점을 해결하기 위한 안출된 것으로, 이더넷(Ethernet) LAN 환경에서 사용되는 LAN의 내부에 이더(EtherType)에 따른 상위 계층 패킷의 분류 기능과 TCP/IP의 일부 기능을 내장하여, 고속 환경하에서의 통신에 응용될 수 있으며, 또한 현재의 TCP/IP(Transport Control Protocol/Internet Protocol)를 유지하면서도 주 프로세서의 사용을 효과적으로 줄일 수 있는 전송 제어 프로토콜/인터넷 프로토콜 가속 장치 및 방법을 제공하는데 그 목적이 있다.Accordingly, the present invention has been made to solve the above-described problems, and includes a classification function of upper layer packets according to Ether and TCP / IP in a LAN used in an Ethernet LAN environment. Built-in some functions, it can be applied for communication in high speed environment, and it is a transmission control protocol / Internet protocol accelerator that can effectively reduce the use of the main processor while maintaining the current Transport Control Protocol / Internet Protocol (TCP / IP). And to provide a method.
도 1은 일반적인 근거리 통신망(LAN : Local Area Network) 카드의 블록도.1 is a block diagram of a typical local area network (LAN) card.
도 2는 본 발명에 따른 LAN 카드의 전송 제어 프로토콜/인터넷 프로토콜 제어 장치의 일실시예 블록도.2 is a block diagram of an embodiment of a transmission control protocol / Internet protocol control apparatus of a LAN card according to the present invention;
도 3은 도 2의 전방 처리부의 일실시예 블록도이다.3 is a block diagram of an embodiment of the front processor of FIG. 2.
도 4는 도 1의 IP 처리부와 TCP 처리부의 공통되는 동작 부분의 일실시예 블록도.4 is a block diagram of an embodiment of a common operation portion of the IP processing unit and the TCP processing unit of FIG.
도 5는 본 발명에 따른 LAN 카드의 TCP/IP 가속을 제어하는 방법의 수행과정을 나타내는 일실시예 흐름도.5 is a flowchart illustrating an embodiment of a method of controlling TCP / IP acceleration of a LAN card according to the present invention.
* 도면의 주요 부분에 대한 부호의 설명 *Explanation of symbols on the main parts of the drawings
200: TCP/IP 가속기 210: 전방 처리부200: TCP / IP accelerator 210: front processing unit
220: 인터넷 프로토콜 처리부 230: 전송 제어 프로토콜 처리부220: Internet protocol processing unit 230: Transmission control protocol processing unit
이와 같은 목적을 달성하기 위한 본 발명의 전송 제어 프로토콜/인터넷 프로토콜 가속 장치는, 외부로부터 입력되는 클럭에 따라 입력되는 데이터의 이더 프레임(Ether Frame) 형태를 구분하여 제어신호 및 인터넷 프로토콜 처리를 위한 정보를 출력하는 전방 처리수단; 상기 제어신호에 의해 제어되어, 상기 전방 처리수단으로부터 전달된 인터넷 프로토콜 처리를 위한 정보를 입력받아 전송 제어 프로토콜 처리를 위한 정보, 동작 완료를 위한 신호 및 상태 레지스터 비트값을 출력하는 인터넷 프로토콜 처리수단; 및 상기 제어신호에 의해 제어되며, 상기 인터넷 프로토콜 처리수단으로부터 전달된 전송 제어 프로토콜 처리를 위한 정보를 입력받아 동작 완료를 위한 신호 및 상태 레지스터 비트값을 출력하는 전송 제어 프로토콜 처리수단을 포함한다.Transmission control protocol / Internet protocol acceleration apparatus of the present invention for achieving the above object, the information for processing the control signal and the Internet protocol by classifying the Ether frame (Ether Frame) type of data input according to the clock input from the outside Front processing means for outputting; Internet protocol processing means controlled by the control signal and receiving information for Internet protocol processing transmitted from the forward processing means and outputting information for transmission control protocol processing, a signal for completing an operation, and a status register bit value; And a transmission control protocol processing means controlled by the control signal and receiving information for transmission control protocol processing transmitted from the internet protocol processing means and outputting a signal for completing the operation and a status register bit value.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명한다.Hereinafter, exemplary embodiments of the present invention will be described with reference to the accompanying drawings.
도 2는 본 발명에 따른 랜 카드의 전송 제어 프로토콜/인터넷 프로토콜 제어 장치의 일실시예 블록도이다.Figure 2 is a block diagram of an embodiment of a transmission control protocol / Internet protocol control apparatus for a LAN card according to the present invention.
도 2에 도시한 바와 같이, 본 발명의 LAN 카드의 전송 제어 프로토콜/인터넷 프로토콜 제어 장치는, 외부로부터 입력되는 클럭(clk)에 따라 입력되는 데이터의 이더 프레임(Ether Frame) 형태를 구분하여 제어신호 및 인터넷 프로토콜 처리를 위한 정보를 출력하는 전방 처리부(210)와, 상기 제어신호에 의해 제어되어, 전방 처리부(210)로부터 전달된 인터넷 프로토콜 처리를 위한 정보를 입력받아 전송 제어 프로토콜 처리를 위한 정보, 동작 완료를 위한 신호(done signal) 및 상태 레지스터 비트값을 출력하는 인터넷 프로토콜 처리부(220)와, 상기 제어신호에 의해 제어되어, 인터넷 프로토콜(IP) 처리부(220)로부터 전달된 전송 제어 프로토콜 처리를 위한 정보를 입력받아 동작 완료를 위한 신호(done signal) 및 상태 레지스터 비트값을 출력하는 전송 제어 프로토콜(TCP) 처리부(230)를 구비한다.As shown in Fig. 2, the transmission control protocol / Internet protocol control apparatus of the LAN card of the present invention classifies an Ether frame of data input according to a clock clk input from the outside to control the signal. And a
상기한 바와 같은 구조를 갖는 본 발명의 LAN 카드의 전송 제어 프로토콜/인터넷 프로토콜 제어 장치의 동작을 설명하면 다음과 같다.The operation of the transmission control protocol / Internet protocol control apparatus of the LAN card of the present invention having the structure as described above is as follows.
수신되고 있는 데이타의 목적지 주소가 자신의 것으로 판명되어 로컬 메모리(30)로의 이동이 시작되면 이 신호를 시작 신호로 인식하여 TCP/IP 가속기(200)가 동작을 개시한다.When the destination address of the data being received turns out to be its own and the movement to the
먼저, 전방 처리부(210)는 해당 이더 프레임(Ether Frame)의 형태를 4번째/6번째 수신 클럭에 입력되는 데이타의 이더 타입(Ether Type)의 정보가 있는 바이트로부터 구분하고, 그 결과가 IP 프레임이면 IP 처리부(220)를 동작 시킨다. 또한, Ether Type 분류에 대한 결과 정보를 상태 레지스터(600)에 전달한다. 전방 처리부(210)는 IP 처리부(220)를 동작 시키는 동시에 TCP 처리부(230)의 동작 개시 여부를 결정하기 위한 상위 프로토콜 종류를 검색하여, TCP 여부를 상태 레지스터(600)에 전달하며, TCP인 경우 TCP 처리부(230)를 동작 시키는 신호를 발생한다. 이어서, IP 처리부(220)와 TCP 처리부(230)는 해당 동작을 완료한 후, 그 결과 및 기타 프로세서가 필요로 하는 정보를 상태 레지스터와 필요한 부가의 레지스터를 이용하여 전달한다. 동작의 완료는 최종 발생되는 돈(Done) 신호가 동작 완료 레지스터를 설정하면서 프로세서(50)가 인식하도록 한다. 이는 데이타 전송의 완료와 TCP/IP 가속기(200)의 동작 완료가 일치하지 않을 가능성을 위한 예비책으로 다른 방법을 통해 프로세서의 상태 레지스터 접근을 인정할 수 있다.First, the
도 3은 도 2의 전방 처리부의 일실시예 블록도이다.3 is a block diagram of an embodiment of the front processor of FIG. 2.
도 3에 도시한 바와 같이, 도 2의 전방 처리부는, 입력된 데이터의 이더 타입(Ether Type)을 판단하고, 상기 판단 결과에 따라 전송 제어 프로토콜 시작 체크를 위한 정보와 제어신호를 출력하는 이더 타입 판단부(211)와, 상기 제어신호에 의해 제어되어, 이더 타입 판단부(211)로부터 전달된 전송 제어 프로토콜 시작 체크를 위한 정보를 입력받아 전송 제어 프로토콜 데이터인지 사용자 데이터그램 프로토콜인지를 검출하는 전송 제어 프로토콜 시작 체크 처리부(212)를 구비한다.As shown in FIG. 3, the front processor of FIG. 2 determines an ether type of input data and outputs information and a control signal for starting a transmission control protocol according to the determination result. A transmission controlled by the
상기한 바와 같은 구조를 갖는 도 2의 전방 처리부의 동작을 상세하게 설명하면 다음과 같다.The operation of the front processor of FIG. 2 having the structure as described above will be described in detail as follows.
이더 파입 판단부(211)는 도 1의 설명에서도 언급했듯이 두 가지 종류의 이더 프레임(Ether Frame)을 구분하기 위해 프레임의 시작부에서 12번째 바이트의 값이 0x05FF이하의 값인 경우 20번째 바이트를 읽고, 0x0600 이상인 값이면 12 번째 바이트를 읽어, 그 값이 0x0800인 경우 IP 처리부(220)를 시작한다. IP가 아닌 경우에는 상태 레지스터(600)의 해당 비트를 1로 설정하고 TCP 데이타인지를 확인하는 TCP 시작 체크 처리부(212)를 동작 시키지 않는다. TCP 시작 체크 처리부(212)에서는 TCP인지 UDP인지를 검출하고, TCP이면 TCP 처리부(230)의 의 시작을 알리는 신호를 생성한다. 이때, TCP가 아니면 상태 레지스터(600)의 해당 비트를 1로 설정한다.As mentioned in the description of FIG. 1, the Ether
도 4는 도 1의 전방 처리부로부터 제어신호를 입력받는 IP 처리부와 TCP 처리부의 공통되는 동작 부분의 일실시예 블록도이다.FIG. 4 is a block diagram of an embodiment of a common operation part of an IP processor and a TCP processor that receive a control signal from the front processor of FIG. 1.
도 4에 도시한 바와 같이, 도 1의 IP 처리부와 TCP 처리부는, 수신된 클럭에 따라 체크섬을 점검하기 위하여 입력된 데이터를 분리하여 계산하는 제 1 체크섬 점검부(222)와, 올바른 체크섬 결과를 얻기 위하여, 제 1 체크섬 점검부(222)로부터 전달된 계산값을 합하여 인터넷 프로토콜 체크섬 결과 값과 전송 제어 프로토콜 체크섬 결과 값을 출력하는 제 2 체크섬 점검부(223)와, 제 2 체크섬 점검부(223)로부터 출력된 인터넷 프로토콜 체크섬 결과 값과 전송 제어 프로토콜 체크섬 결과 값을 비교하여 체크섬 장애를 나타내는 신호를 출력하는 체크섬 결과 처리부(224)를 구비한다.As shown in FIG. 4, the IP processing unit and the TCP processing unit of FIG. 1 include a first
제 1 체크섬 점검부(222)는 2의 보수 제 1 및 제 2 계산부(221, 119)를 구비한다.The
상기한 바와 같은 구조를 갖는 도 2의 IP 처리부와 TCP 처리부에 대한 동작을 설명하면 다음과 같다.Operations of the IP processor and the TCP processor of FIG. 2 having the structure as described above will be described below.
32비트로 연속해서 입력되는 데이타를 각 수신 클럭에 동기된 16비트 2의 보수 제 1 및 제 2 계산부(221, 119)로 분리하여 각각 계산한 후, 다시 올바른 체크섬 결과를 얻기 위해, 두 덧셈의 최종결과 값들의 합을 취하여 얻어진 값의 1의 보수 결과를 얻기 위한 마무리 작업(223)을 수행한다. 이렇게 얻어진 IP(TCP) 체크섬 결과를 0xFFFF와 비교(224)하여, 그 값의 동일성에 따라 동일하지 않으면 상태 레지스터(600)의 IP(TCP) 체크섬 에러를 알리는 비트를 1로, 그렇지 않으면 그 비트를0으로 설정한다. 이 상태 레지스터의 결과값은 FCS 결과와 함께 수신이 완료된 후에 발생하는 인터럽트에 의해 주 프로세서(50)가 사용한다. IP 기능부(220)의 경우, 32비트 데이타의 체크섬 과정 중에 프래그먼트(Fragment) 정보, 버전(Version) 정보 , IP 헤더 길이(Header Length), 의사 헤더(Pseudo Header) 체크섬 등 IP 헤더(Header)에 포함된 정보를 추출하여, 프래그먼트(Fragment) 정보, 버전(Version) 정보 등은 상태 레지스터의 해당 비트를 1또는 0으로 설정하고 , TCP 처리를 위해 사용되는 의사 헤더(Pseudo Header) 체크섬 결과 등의 정보는 TCP 처리부(230)로 넘겨 준다.The 32-bit continuous data is divided into 16-bit two's complement first and
도 5는 본 발명에 따른 LAN 카드의 TCP/IP 가속을 제어하는 방법의 수행과정을 나타내는 일실시예 흐름도이다.5 is a flowchart illustrating an embodiment of a method of controlling TCP / IP acceleration of a LAN card according to the present invention.
검출한 캐리어(Carrier)를 통하여 이더넷(Ethernet) 신호가 검출되었는지를 판단하며(501), 상기 판단 결과 검출되었다면, 수신된 목적지 주소가 내 것인지를 판단한다(502). 상기 판단 결과 나의 주소가 아니라면, 상기 판단 과정(501)을 재수행한다. 또한, 상기 판단 과정(501)에서 이더넷 신호가 검출되지 않았다면, 상기 판단 과정(501)을 재수행한다. 수신된 이데넷 프레임을 분류하고, 인터럽트 발생한다(503). 이어서, 정상적인 IP 프레임인지를 판단하며(504), 상기 판단 결과 IP 프레임이라면, IP 프레임을 처리한다(505).It is determined whether an Ethernet signal is detected through the detected carrier (501). If it is detected as a result of the determination, it is determined whether the received destination address is within (502). If the determination result is not my address, the
그리고, 정상적인 TCP 프레임인지를 판단하며(506), 상기 판단 결과 장상적인 TCP 프레임이라고 판단되면, 정상적인 TCP 프레임을 처리한다(507).If it is determined that the normal TCP frame is a normal TCP frame (506), if it is determined that the normal TCP frame, the normal TCP frame is processed (507).
이어서, 해당되는 동작에 대한 레지스터를 설정하여 상태 값을 저장한다(508).Next, a register for a corresponding operation is set to store a state value (508).
한편, 상기 판단 과정(504)에 IP 프레임이 아니라고 판단되거나, 상기 판단 과정(506)에서 TCP 프레임이 아니라고 판단되면, 상태 값을 저장하는 과정(508)을 곧바로 수행한다.On the other hand, if it is determined in the
본 발명의 기술 사상은 상기 바람직한 실시예에 따라 구체적으로 기술되었으나, 상기한 실시예는 그 설명을 위한 것이며 그 제한을 위한 것이 아님을 주의하여야 한다. 또한, 본 발명의 기술 분야의 통상의 전문가라면 본 발명의 기술 사상의 범위내에서 다양한 실시예가 가능함을 이해할 수 있을 것이다.Although the technical idea of the present invention has been described in detail according to the above preferred embodiment, it should be noted that the above-described embodiment is for the purpose of description and not of limitation. In addition, those skilled in the art will understand that various embodiments are possible within the scope of the technical idea of the present invention.
이상에서 설명한 바와 같이 본 발명의 LAN 카드의 전송 제어 프로토콜/인터넷 프로토콜 가속 장치 및 방법은, LAN 제어기와 LAN 카드의 로컬 메모리 사이에 데이타가 이동되는 동안 데이타 프레임을 분류하는 것은 물론, TCP/IP 동작 중에서 주요 병목이 되는 체크섬 계산 등의 과정을 수행함으로써, 데이타의 메모리 이동 후의 TCP/IP 프로토콜 처리 과정을 최소화하고, 또한 전체 동작에 있어서 주 프로세서의 동작을 절약함으로써 데이타 통신의 고속화를 실현할 수 있는 효과가 있다.As described above, the apparatus and method for transmission control protocol / Internet protocol acceleration of a LAN card of the present invention not only classifies data frames while data is moved between the LAN controller and the local memory of the LAN card, as well as TCP / IP operation. By performing checksum calculation, which is a major bottleneck, data processing speed can be minimized by minimizing TCP / IP protocol processing after data movement and saving the operation of the main processor in all operations. There is.
Claims (4)
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970073018A KR100249502B1 (en) | 1997-12-24 | 1997-12-24 | Apparatus and method of transfer contol protocol and protocol acceleration |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1019970073018A KR100249502B1 (en) | 1997-12-24 | 1997-12-24 | Apparatus and method of transfer contol protocol and protocol acceleration |
Publications (2)
Publication Number | Publication Date |
---|---|
KR19990053395A KR19990053395A (en) | 1999-07-15 |
KR100249502B1 true KR100249502B1 (en) | 2000-03-15 |
Family
ID=19528429
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1019970073018A KR100249502B1 (en) | 1997-12-24 | 1997-12-24 | Apparatus and method of transfer contol protocol and protocol acceleration |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100249502B1 (en) |
Families Citing this family (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100519378B1 (en) * | 1998-03-02 | 2005-11-25 | 매그나칩 반도체 유한회사 | Serial communication |
-
1997
- 1997-12-24 KR KR1019970073018A patent/KR100249502B1/en not_active IP Right Cessation
Also Published As
Publication number | Publication date |
---|---|
KR19990053395A (en) | 1999-07-15 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US7836220B2 (en) | Network direct memory access | |
US7050394B2 (en) | Framer | |
US6996070B2 (en) | TCP/IP offload device with reduced sequential processing | |
US6654823B2 (en) | Packet-data processing apparatus | |
US5442750A (en) | System for transmitting data between systems using selected subsets of plural interconnecting bus lines and including selection of a compatible transmission speed | |
KR100364385B1 (en) | Window comparator | |
JPH0728321B2 (en) | Storage node switching device | |
EP1216564A1 (en) | Reduced hardware network adapter and communication method | |
US6483840B1 (en) | High speed TCP/IP stack in silicon | |
JP4229810B2 (en) | Communication test equipment | |
JP2986798B2 (en) | Data transmission control method and data communication device | |
EP2493110A1 (en) | Method, module and apparatus for receiving data packet frames | |
KR100249502B1 (en) | Apparatus and method of transfer contol protocol and protocol acceleration | |
US6061350A (en) | Address detecting device of ethernet controller and address detecting method thereof | |
US6804205B1 (en) | Method and apparatus for transmitting packet for synchronization using half duplex transmission medium | |
CN1426203A (en) | Transmission device and method for data package between different buses | |
WO2022125756A1 (en) | Network interface supporting time sensitive networks and macsec protection | |
JP3516998B2 (en) | Address information reading device | |
KR100259074B1 (en) | Method and appratus for detecting addresses in ethernet controller | |
JPH1051480A (en) | Protocol processing system for gateway equipment | |
KR100577148B1 (en) | Address Detection Device and Detection Method of Ethernet Controller | |
JP4423728B2 (en) | Data transmission apparatus and method | |
JP2002217910A (en) | Information i/o device | |
KR20050098986A (en) | Apparatus and method for transmitting/receiving packet and error decision information | |
JP2004328624A (en) | Data communication device and method |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20101201 Year of fee payment: 12 |
|
LAPS | Lapse due to unpaid annual fee |