KR20070078542A - 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 - Google Patents
페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 Download PDFInfo
- Publication number
- KR20070078542A KR20070078542A KR1020060008901A KR20060008901A KR20070078542A KR 20070078542 A KR20070078542 A KR 20070078542A KR 1020060008901 A KR1020060008901 A KR 1020060008901A KR 20060008901 A KR20060008901 A KR 20060008901A KR 20070078542 A KR20070078542 A KR 20070078542A
- Authority
- KR
- South Korea
- Prior art keywords
- packet
- layer
- tcp
- response
- fake
- Prior art date
Links
Images
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/18—Automatic repetition systems, e.g. Van Duuren systems
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L1/00—Arrangements for detecting or preventing errors in the information received
- H04L1/12—Arrangements for detecting or preventing errors in the information received by using return channel
- H04L1/16—Arrangements for detecting or preventing errors in the information received by using return channel in which the return channel carries supervisory signals, e.g. repetition request signals
- H04L1/1607—Details of the supervisory signal
- H04L1/1628—List acknowledgements, i.e. the acknowledgement message consisting of a list of identifiers, e.g. of sequence numbers
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/19—Flow control; Congestion control at layers above the network layer
- H04L47/193—Flow control; Congestion control at layers above the network layer at the transport layer, e.g. TCP related
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L47/00—Traffic control in data switching networks
- H04L47/10—Flow control; Congestion control
- H04L47/32—Flow control; Congestion control by discarding or delaying data units, e.g. packets or frames
-
- 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]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Computer Security & Cryptography (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
본 발명은 TCP 계층과 IP 계층 사이에 추가된 페이크 응답(FAKE-ACK) 계층에서 전송 요청된 패킷을 IP 계층으로 전달함과 동시에 가상의 응답 패킷을 생성하여 TCP 계층으로 전달함으로써, 전송 효율을 개선시킬 수 있도록 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법에 관한 것으로, TCP 계층으로부터 전송 요청된 패킷을 복사하여 큐에 저장시킨 후, 상기 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전달하는 TCP 패킷 전송 과정과; IP 계층으로부터 전달받은 패킷의 응답 번호를 체크하여, 응답 번호가 정상인 경우에는 정상적으로 응답을 수신한 패킷을 큐에서 삭제시키고, 응답 번호가 정상이 아닌 경우에는 재전송 여부를 판단하여 재전송을 수행한 후, 상기 패킷에 페이로드가 포함되어 있으면, 상기 패킷의 응답 번호를 수정한 후, 상기 TCP 계층으로 전달하는 TCP 패킷 수신 과정을 포함하여 이루어지는 것이 바람직하다.
TCP 계층, IP 계층, 페이크 응답 계층, 응답 번호, TCP 패킷
Description
도 1은 슬로우 스타트 전송 방식과 정체 회피 기법을 설명하기 위한 도면.
도 2는 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치의 프로토콜 스택 구조를 보인 도면.
도 3 및 도 4는 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 TCP 패킷 송수신 방법을 설명하기 위한 플로우챠트.
본 발명은 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법에 관한 것으로서, 특히 TCP 계층과 IP 계층 사이에 페이크 응답(FAKE-ACK) 계층을 추가하여 전송 효율을 개선시킬 수 있도록 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법에 관한 것이다.
인터넷의 네트워크 전송 프로토콜인 TCP(Transmission Control Protocol)은 인터넷에서 패킷 전송에 오류가 발생하면, 해당 패킷을 재전송하여 신뢰성있게 패킷 전송을 수행하는 프로토콜로, 전송 에러가 네트워크의 정체(Congestion)에 의해 일어나는 유선망을 가정하여 설계되고 개발되었다.
이에 따라, 전송 손실이 전송 에러의 주요 원인이 되고 있는 무선 이동 통신망에서 유선망 기반의 TCP는 많은 문제점을 내재하고 있다.
즉, TCP 프로토콜은 전송된 패킷에 대한 수신 여부를 나타내는 응답(ACK)이 정해진 시간내에 수신되지 않거나, 전송 손실(Transmission Loss)이 발생할 경우 네트워크의 정체에 의해 전송 손실이 발생한 것으로 간주하고, 이를 극복하기 위한 방안으로 네트워크 정체 현상을 극복하기 위한 정체 회피 기법(Congestion Avoidance Mechanism)을 사용한다.
정체 회비 기법은 패킷이 손실되었다고 판단되면, 그 원인을 네트워크 정체로 간주하고 전송하는 패킷의 양을 줄임으로써, 정체를 완화시키는 방법으로, 도 1에 도시하는 바와 같이, 전송 시작부터 패킷을 천천히 보내고 이에 대한 응답을 받으면, 전송량을 두배로 증가시키는 슬로우 스타트(Slow start) 전송 방식과 함께 사용된다.
한편, 무선 이동 통신망에서의 전송 손실은 네트워크의 정체뿐만 아니라 전송중에 발생하는 비트 오류 및 접속이 잠시 끊어지는 장기간 비접속에 의한 손실일 경우에도 발생하게 된다.
그러나, 종래에는 비트 오류와 장기간 비접속에 의한 패킷 손실이 발생한 경우에도 실제로 정체가 발생된 것이 아님에도 불구하고 정체가 발생된 것으로 간주하여, 정체 회피 기법을 사용하게 된다.
이에 따라, 종래에는 정체 회피 기법 사용으로 인해 정체 윈도우(Congestion Window)를 감소시켜 TCP의 처리율(Throughput)을 저하시키는 한편, 처리율 변동이 심해짐에 따라 서비스 품질을 저하시키게 되는 문제를 야기시키게 된다.
전술한 문제점을 해결하기 위해 종래에는 무선 이동 통신망에 TCP 프록시 서버를 두게 되는 데, TCP 프록시 서버는 TCP 프록시 서버 역할을 수행하기 위해서 무선 이동 통신망 프로토콜뿐만 아니라 PPP/IP/TCP 프로토콜을 매 패킷마다 디캡슐레이션(Decapsulation)해야 하고, 종단간의 TCP 세션의 프록시 역할을 수행하기 위해 패킷을 캐싱하고 있어야 하며, 셀내에 존재하는 모든 단말들에 대한 TCP 프록시 서버 역할을 수행해야 한다.
이에 따라, 오버플로우 발생 가능성이 있고, 패킷 처리 시간이 크게 지연될 수 있으며, 많은 단말이 TCP 세션을 연결할 때 TCP 프록시 서버는 병목 구간이 될 가능성을 내재하고 있다.
본 발명은 전술한 문제점을 해결하기 위해 안출된 것으로서, TCP 계층과 IP 계층 사이에 추가된 페이크 응답(FAKE-ACK) 계층에서 전송 요청된 패킷을 IP 계층으로 전달함과 동시에 가상의 응답 패킷을 생성하여 TCP 계층으로 전달함으로써, 전송 효율을 개선시킬 수 있도록 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법을 제공함에 그 목적이 있다.
전술한 목적을 달성하기 위한 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치는, TCP 계층과 IP 계층 사이에 페이크 응답 계층이 추가되되, 상기 페이크 응답 계층에서, 상기 TCP 계층으로부터 전송 요청된 패킷에 대하여 IP 계층으로 패킷을 전달함과 동시에 상기 패킷에 대한 응답(ACK) 패킷을 가상으로 만들어 상기 TCP 계층으로 전달하고, 수신측으로부터 수신되는 진짜 응답 패킷을 처리하는 것이 바람직하다.
나아가, 상기 페이크 응답 계층은, 재전송을 위해 상기 전송 요청된 패킷에 대한 복사본을 저장하는 것이 바람직하다.
한편, 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 TCP 패킷 송수신 방법은, TCP 계층으로부터 전송 요청된 패킷을 복사하여 큐에 저장시킨 후, 상기 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전달하는 TCP 패킷 전송 과정과; IP 계층으로부터 전달받은 패킷의 응답 번호를 체크하여, 응답 번호가 정상인 경우에는 정상적으로 응답을 수신한 패킷을 큐에서 삭제시키고, 응답 번호가 정상이 아닌 경우에는 재전송 여부를 판단하여 재전송을 수행한 후, 상기 패킷에 페이로드가 포함되어 있으면, 상기 패킷의 응답 번호를 수정한 후, 상기 TCP 계층으로 전달하는 TCP 패 킷 수신 과정을 포함하여 이루어지는 것이 바람직하다.
나아가, 상기 TCP 패킷 전송 과정은, 상기 TCP 계층으로부터 전송할 TCP 패킷을 전달받으면, 상기 패킷이 전송될 세션이 존재하는 지를 판단하는 단계와; 상기 판단결과 상기 패킷이 전송될 세션이 존재하지 않으면, 상기 패킷에 페이로드가 포함되어 있는 지를 판단하는 단계와; 상기 판단결과 상기 패킷에 페이로드가 포함되어 있으면, 상기 패킷이 전송될 세션을 생성하고, 상기 세션을 통해 전송할 패킷을 복사하여 저장할 큐를 생성하는 단계와; 상기 패킷을 복사하여 상기 큐에 저장시킨 후, 상기 패킷을 상기 IP 계층으로 전송함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전송하는 단계를 포함하여 이루어지는 것이 바람직하다.
그리고, 상기 판단결과 상기 패킷에 페이로드가 포함되어 있지 않은 단순 응답 패킷인 경우에는, 상기 TCP 계층으로부터 전달받은 TCP 패킷을 상기 IP 계층으로 전달하는 과정을 더 포함하여 이루어지는 것이 바람직하다.
그리고, 상기 판단결과 상기 패킷이 전송될 세션이 존재하는 경우에는, 상기 패킷을 복사하여 상기 큐에 저장한 후, 상기 패킷을 IP 계층으로 전송함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전송하는 단계를 더 포함하여 이루어지는 것이 바람직하다.
그리고, 상기 TCP 패킷 수신 과정은, 상기 IP 계층으로부터 TCP 패킷을 전달받으면, 페이크 응답되고 있는 세션중에 상기 패킷을 전송할 세션이 존재하는 지를 판단하는 단계와; 상기 판단결과 페이크 응답되고 있는 세션중에 상기 패킷을 전송할 세션이 존재하면, 상기 패킷의 응답 번호를 체크하여 상기 패킷의 응답 번호가 정상인 지를 판단하는 단계와; 상기 판단결과 상기 응답 번호가 정상인 경우에는, 상기 큐에서 응답 패킷을 수신한 번호까지의 패킷을 삭제시키는 단계와; 상기 패킷에 페이로드가 존재하지 않으면 상기 패킷을 폐기시키고, 상기 패킷에 페이로드가 존재하면, 상기 TCP 계층이 상기 TCP 패킷 송신 과정에서 미리 응답을 수신한 패킷에 대한 진짜 응답을 다시 수신하게 됨에 따라 발생하게 되는 오류를 방지하기 위해 상기 패킷에 포함되어 있는 응답 번호를 수정한 후, 상기 패킷을 상기 TCP 계층으로 전달하는 단계를 포함하여 이루어지는 것이 바람직하다.
그리고, 상기 판단결과 응답 번호가 정상이 아닌 경우에는, 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 것인 지를 판단하는 단계와; 상기 판단결과 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 경우에는, 상기 큐에 저장되어 있는 패킷 중에서 상기 응답 번호와 동일한 번호를 갖는 패킷부터 재전송을 수행하고, 상기 패킷에 페이로드가 존재하는 지를 판단하는 단계와; 상기 판단결과 상기 패킷에 페이로드가 존재하지 않으면 상기 패킷을 폐기시키고, 상기 패킷에 페이로드가 존재하면, 상기 TCP 계층이 상기 TCP 패킷 송신 과정에서 미리 응답을 수신한 패킷에 대한 진짜 응답을 다시 수신하게 됨에 따라 발생하게 되는 오류를 방지하기 위해 상기 패킷에 포함되어 있는 응답 번호를 수정한 후, 상기 패킷을 상기 TCP 계층으로 전달하는 단계를 포함하여 이루어지는 것이 바람직하다.
이하에서는 첨부한 도면을 참조하여 본 발명의 바람직한 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법 에 대해서 상세하게 설명한다.
도 2는 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치의 프로토콜 스택 구조를 보인 도로, TCP 계층과 IP 계층 사이에 페이크 응답 계층이 추가된다.
전술한, 페이크 응답 계층에서는 TCP 계층으로부터 전송 요청된 패킷에 대하여 IP 계층으로 패킷을 전달함과 동시에 수신측이 해당 패킷에 대해 오류없이 잘 수신했음을 알리기 보내는 응답(ACK) 패킷을 가상으로 만들어 TCP 계층으로 올려보낸다.
전술한 바와 같이, 페이크 응답 계층에서 TCP 계층으로부터 전송 요청된 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 만들어 TCP 계층으로 올려 보냄으로써, 수신측으로부터 또는 TCP 프록시 서버로부터 응답 패킷을 수신하는 데까지 걸리는 왕복 시간(Round Trip Time)이 존재하지 않게 된다.
이에 따라, TCP 계층은 곧바로 다음번에 전송할 수 있는 패킷의 양을 두 배로 증가시켜 전송하게 되므로, 슬로우 스타트 기법에 의해 발생될 수 있는 초기 처리율 저하가 발생하지 않게 된다.
한편, 페이크 응답 계층은 수신측으로부터 수신되는 진짜 응답 패킷을 TCP 계층으로 넘기지 않고 단독적으로 처리하는 데, 수신측으로부터 수신한 진짜 응답 패킷의 처리 및 재전송을 위해 TCP 계층으로부터 전송 요청된 패킷에 대한 복사본을 가지고 있어야 한다.
도 3 및 도 4는 본 발명의 일 실시예에 따른 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 TCP 패킷 송수신 방법을 설명하기 위한 플로우챠트로, 도 3은 페이크 응답 계층에서의 패킷 송신 과정을 설명하기 위한 플로우챠트이고, 도 4는 페이크 응답 계층에서의 패킷 수신 과정을 설명하기 위한 플로우챠트이다.
우선, 패킷 전송 과정을 살펴보면, 도 3에 도시하는 바와 같이, TCP 계층으로부터 전송할 TCP 패킷을 전달받으면(S10), TCP 계층으로부터 전달받은 TCP 패킷의 발신지 포트, 발신지 어드레스, 수신지 포트, 수신지 어드레스에 의거하여 TCP 계층으로부터 전달받은 TCP 패킷이 전송될 세션이 존재하는 지, 즉, TCP 계층으로부터 전달받은 TCP 패킷을 전송할 세션이 이미 페이크 응답되고 있는 세션인 지를 판단한다(S12).
상기한 과정 S12의 판단결과 TCP 계층으로부터 전달받은 TCP 패킷을 전송할 세션이 이미 페이크 응답되고 있는 세션이 아닌 경우에는, 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷에 페이로드(Payload), 즉, 전송할 데이터가 포함되어 있는 지를 판단한다(S14).
상기한 과정 S14의 판단결과 TCP 계층으로부터 전달받은 TCP 패킷에 페이로드가 포함되어 있는 경우에는, 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷의 발신지 포트, 발신지 어드레스, 수신지 포트, 수신지 어드레스에 의거하여 페이크 응답 세션을 생성하고, 생성된 세션을 통해 전송할 TCP 패킷을 복사하여 저장할 페이크 응답 큐(Fake-Acked Queue)를 생성한다(S16).
이후에는 향후 수신측으로부터 수신될 응답(ACK) 패킷을 처리하고, 경우에 따라 재전송을 위해 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷을 복사하여 상기한 과정 S16에서 생성한 페이크 응답 큐에 저장한다(S18).
이후, 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 생성하여 TCP 계층으로 전달한다(S20).
한편, 상기한 과정 S14의 판단결과 TCP 계층으로부터 전달받은 TCP 패킷에 페이로드가 포함되어 있지 않은 경우, 즉, 전송할 데이터가 포함되어 있지 않은 단순 응답(ACK) 패킷인 경우에는 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷을 IP 계층으로 전달한다(S22).
한편, 상기한 과정 S12의 판단결과 TCP 계층으로부터 전달받은 TCP 패킷을 전송할 세션이 이미 페이크 응답되고 있는 세션인 경우에는 상기한 과정 S18로 진행하여, 상기한 과정 S10을 통해 TCP 계층으로부터 전달받은 TCP 패킷을 복사하여 상기한 과정 S16에서 생성한 페이크 응답 큐에 저장한 후, TCP 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 생성하여 TCP 계층으로 전달한다(S20).
한편, 패킷 수신 과정은 도 4에 도시하는 바와 같이, IP 계층으로부터 TCP 패킷을 전달받으면(S30), IP 계층으로부터 전달받은 TCP 패킷의 발신지 포트, 발신지 어드레스, 수신지 포트, 수신지 어드레스에 의거하여, IP 계층으로부터 전달받은 TCP 패킷이 전송될 세션이 존재하는 지, 즉, 이미 페이크 응답되고 있는 세션중에 IP 계층으로부터 전달받은 TCP 패킷을 전송할 세션이 존재하는 지를 판단한다(S32).
상기한 과정 S32의 판단결과 페이크 응답되고 있는 세션중에 IP 계층으로부 터 전달받은 TCP 패킷을 전송할 세션이 존재하는 경우에는, 검색된 세션의 응답 번호(Acknowledge Number)와 IP 계층으로부터 전달받은 TCP 패킷의 응답 번호를 체크하여(S34), IP 계층으로부터 전달받은 TCP 패킷의 응답 번호가 정상인 지, 즉, 수신측으로부터 전송 패킷에 대한 응답 패킷이 순차적으로 수신되는 지를 판단한다(S36).
예를 들어, 송신측에서 패킷 1, 2, 3, 4, 5를 전송하고, 수신측에서는 송신측이 전송한 패킷 1, 2를 수신한 후, 패킷 3은 수신하지 못하고, 패킷 4, 5를 수신하게 되는 경우, 수신측에서는 패킷 2의 수신에 따라 송신측으로 패킷 2를 정상적으로 수신했음을 알리기 위해 응답(ACK) 패킷을 전송하고, 이후, 패킷 3을 수신하지 못한 채 패킷 4를 수신하게 되면 송신측으로 패킷 2까지 정상적으로 수신했음을 알리는 응답 패킷을 다시 전송하게 되고, 패킷 5를 수신하게 되면 송신측으로 패킷 2까지 정상적으로 수신했음을 알리는 응답 패킷을 다시 전송하게 된다. 이에 따라, 송신측에서는 패킷 2에 대한 응답을 3회 연속 수신하게 되어, IP 계층으로부터 전달받은 TCP 패킷의 응답 번호가 정상이 아니게 된다.
상기한 과정 S36의 판단결과 IP 계층으로부터 전달받은 TCP 패킷의 응답 번호가 정상인 경우에는, 페이크 응답 큐에서 응답 패킷을 수신한 번호까지의 패킷을 삭제시키고(S38), 상기한 과정 S30을 통해 IP 계층으로부터 전달받은 TCP 패킷에 페이로드, 즉 데이터가 존재하는 지를 판단한다(S40).
상기한 과정 S40의 판단결과 IP 계층으로부터 전달받은 TCP 패킷에 페이로드가 존재하지 않는 경우에는, IP 계층으로부터 전달받은 TCP 패킷이 데이터가 포함 되지 않은 단순 응답 패킷이므로, IP 계층으로부터 전달받은 TCP 패킷을 폐기시킨다(S42).
한편, 상기한 과정 S40의 판단결과 IP 계층으로부터 전달받은 TCP 패킷에 페이로드가 존재하는 경우에는, IP 계층으로부터 전달받은 TCP 패킷을 TCP 계층으로 전달했을 때, 패킷 송신 과정에서 페이크 응답 계층으로부터 응답(가상 응답)을 수신한 패킷에 대한 응답을 다시 수신하게 됨에 따라 발생하는 오류(예를 들어, 패킷 전송 과정에서 페이크 응답 계층이 패킷 1, 2, 3을 IP 계층으로 전달함과 동시에 패킷 1, 2, 3에 대한 가상 응답을 생성하여 TCP 계층으로 전달했는 데, 수신측으로부터 패킷 2에 대한 응답과 데이터를 포함하는 패킷을 수신하게 되면, 패킷 2에 대한 응답이 다시 TCP 계층으로 보고되므로, 오류가 발생할 수 있게 된다.)를 방지하기 위해 IP 계층으로부터 전달받은 TCP 패킷에 포함되어 있는 응답 번호를 수정하고(S44), IP 계층으로부터 전달받은 TCP 패킷을 TCP 계층으로 전달한다(S46).
상기한 과정 S44에서 TCP 패킷에 포함되어 있는 응답 번호를 가장 마지막에 수신측으로 전송한 패킷의 응답 번호로 수정할 수도 있고, 패킷 전송 과정에서 수신측으로 패킷을 전송하고 TCP 계층으로 가상 응답 패킷을 생성하여 전달할 때, 후반부에 보낸 일부 패킷에 대한 응답을 수행하지 않고 있다가 수신측으로부터 페이로드와 응답을 포함하는 TCP 패킷을 수신하게 되면, 응답을 수행하지 않은 패킷의 번호로 응답 번호를 수정할 수도 있다.
한편, 상기한 과정 S36의 판단결과 응답 번호가 정상이 아닌 경우에는, 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 것인 지를 판단한다(S48).
상기한 과정 S48에서 동일한 응답 번호를 갖는 응답 패킷이 3회 이상 수신되면, 해당 응답 번호를 갖는 패킷부터 재전송하게 된다.
상기한 과정 S48의 판단결과 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 경우에는, 페이크 응답 큐에 저장되어 있는 패킷 중에서 응답 번호와 동일한 번호를 갖는 패킷부터 재전송을 수행하고(S50), 상기한 과정 S40으로 진행하여 IP 계층으로부터 수신한 TCP 패킷에 페이로드가 존재하는 지를 판단하여, IP 계층으로부터 전달받은 TCP 패킷이 데이터가 포함되지 않은 단순 응답 패킷이면, IP 계층으로부터 전달받은 TCP 패킷을 폐기시키고(S42), IP 계층으로부터 전달받은 TCP 패킷에 페이로드가 존재하는 경우에는 IP 계층으로부터 전달받은 TCP 패킷에 포함되어 있는 응답 번호를 수정한 후(S44), IP 계층으로부터 전달받은 TCP 패킷을 TCP 계층으로 전달한다(S46).
한편, 상기한 과정 S32의 판단결과 페이크 응답되고 있는 세션중에 IP 계층으로부터 전달받은 TCP 패킷을 전송할 세션이 존재하지 않는 경우에는, 상기한 과정 S46으로 진행하여 IP 계층으로부터 전달받은 TCP 패킷을 TCP 계층으로 전달한다.
이상에서 살펴본 바와 같이, 페이크 응답 계층을 구비하여 TCP 패킷 송수신을 수행하는 네트워크 전송 장치로는 이동 통신 단말기, 기지국 서버 등이 있다.
본 발명의 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법은 전술한 실시예에 국한되지 않고 본 발명의 기술 사상이 허용하는 범위 내에서 다양하게 변형하여 실시할 수 있다.
이상에서 설명한 바와 같은 본 발명의 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를 이용한 TCP 패킷 송수신 방법에 따르면, TCP 계층과 IP 계층 사이에 추가된 페이크 응답(FAKE-ACK) 계층에서 전송 요청된 패킷을 IP 계층으로 전달함과 동시에 가상의 응답 패킷을 생성하여 TCP 계층으로 전달함으로써, 전송 효율을 개선시킬 수 있게 된다.
Claims (8)
- TCP 계층과 IP 계층 사이에 페이크 응답 계층이 추가되되,상기 페이크 응답 계층에서, 상기 TCP 계층으로부터 전송 요청된 패킷에 대하여 IP 계층으로 패킷을 전달함과 동시에 상기 패킷에 대한 응답(ACK) 패킷을 가상으로 만들어 상기 TCP 계층으로 전달하고, 수신측으로부터 수신되는 진짜 응답 패킷을 처리하는 페이크 응답 계층을 구비하는 네트워크 전송 장치.
- 제 1항에 있어서, 상기 페이크 응답 계층은,재전송을 위해 상기 전송 요청된 패킷에 대한 복사본을 저장하는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치.
- TCP 계층으로부터 전송 요청된 패킷을 복사하여 큐에 저장시킨 후, 상기 패킷을 IP 계층으로 전달함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전달하는 TCP 패킷 전송 과정과;IP 계층으로부터 전달받은 패킷의 응답 번호를 체크하여, 응답 번호가 정상인 경우에는 정상적으로 응답을 수신한 패킷을 큐에서 삭제시키고, 응답 번호가 정상이 아닌 경우에는 재전송 여부를 판단하여 재전송을 수행한 후, 상기 패킷에 페이로드가 포함되어 있으면, 상기 패킷의 응답 번호를 수정한 후, 상기 TCP 계층으로 전달하는 TCP 패킷 수신 과정을 포함하여 이루어지는 페이크 응답 계층을 구비 하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
- 제 3항에 있어서, 상기 TCP 패킷 전송 과정은,상기 TCP 계층으로부터 전송할 TCP 패킷을 전달받으면, 상기 패킷이 전송될 세션이 존재하는 지를 판단하는 단계와;상기 판단결과 상기 패킷이 전송될 세션이 존재하지 않으면, 상기 패킷에 페이로드가 포함되어 있는 지를 판단하는 단계와;상기 판단결과 상기 패킷에 페이로드가 포함되어 있으면, 상기 패킷이 전송될 세션을 생성하고, 상기 세션을 통해 전송할 패킷을 복사하여 저장할 큐를 생성하는 단계와;상기 패킷을 복사하여 상기 큐에 저장시킨 후, 상기 패킷을 상기 IP 계층으로 전송함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전송하는 단계를 포함하여 이루어지는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
- 제 4항에 있어서, 상기 판단결과 상기 패킷에 페이로드가 포함되어 있지 않은 단순 응답 패킷인 경우에는, 상기 TCP 계층으로부터 전달받은 TCP 패킷을 상기 IP 계층으로 전달하는 과정을 더 포함하여 이루어지는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
- 제 4항에 있어서, 상기 판단결과 상기 패킷이 전송될 세션이 존재하는 경우에는,상기 패킷을 복사하여 상기 큐에 저장한 후, 상기 패킷을 IP 계층으로 전송함과 동시에 가상 응답 패킷을 생성하여 상기 TCP 계층으로 전송하는 단계를 더 포함하여 이루어지는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
- 제 3항에 있어서, 상기 TCP 패킷 수신 과정은,상기 IP 계층으로부터 TCP 패킷을 전달받으면, 페이크 응답되고 있는 세션중에 상기 패킷을 전송할 세션이 존재하는 지를 판단하는 단계와;상기 판단결과 페이크 응답되고 있는 세션중에 상기 패킷을 전송할 세션이 존재하면, 상기 패킷의 응답 번호를 체크하여 상기 패킷의 응답 번호가 정상인 지를 판단하는 단계와;상기 판단결과 상기 응답 번호가 정상인 경우에는, 상기 큐에서 응답 패킷을 수신한 번호까지의 패킷을 삭제시키는 단계와;상기 패킷에 페이로드가 존재하지 않으면 상기 패킷을 폐기시키고, 상기 패킷에 페이로드가 존재하면, 상기 TCP 계층이 상기 TCP 패킷 송신 과정에서 미리 응답을 수신한 패킷에 대한 진짜 응답을 다시 수신하게 됨에 따라 발생하게 되는 오류를 방지하기 위해 상기 패킷에 포함되어 있는 응답 번호를 수정한 후, 상기 패킷을 상기 TCP 계층으로 전달하는 단계를 포함하여 이루어지는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
- 제 7항에 있어서, 상기 판단결과 응답 번호가 정상이 아닌 경우에는, 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 것인 지를 판단하는 단계와;상기 판단결과 비정상적으로 수신되는 응답 번호를 갖는 패킷을 재전송할 경우에는, 상기 큐에 저장되어 있는 패킷 중에서 상기 응답 번호와 동일한 번호를 갖는 패킷부터 재전송을 수행하고, 상기 패킷에 페이로드가 존재하는 지를 판단하는 단계와;상기 판단결과 상기 패킷에 페이로드가 존재하지 않으면 상기 패킷을 폐기시키고, 상기 패킷에 페이로드가 존재하면, 상기 TCP 계층이 상기 TCP 패킷 송신 과정에서 미리 응답을 수신한 패킷에 대한 진짜 응답을 다시 수신하게 됨에 따라 발생하게 되는 오류를 방지하기 위해 상기 패킷에 포함되어 있는 응답 번호를 수정한 후, 상기 패킷을 상기 TCP 계층으로 전달하는 단계를 포함하여 이루어지는 것을 특징으로 하는 페이크 응답 계층을 구비하는 네트워크 전송 장치를 이용한 티씨피 패킷 송수신 방법.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060008901A KR100756183B1 (ko) | 2006-01-27 | 2006-01-27 | 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020060008901A KR100756183B1 (ko) | 2006-01-27 | 2006-01-27 | 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 |
Publications (2)
Publication Number | Publication Date |
---|---|
KR20070078542A true KR20070078542A (ko) | 2007-08-01 |
KR100756183B1 KR100756183B1 (ko) | 2007-09-05 |
Family
ID=38599497
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020060008901A KR100756183B1 (ko) | 2006-01-27 | 2006-01-27 | 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR100756183B1 (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100959099B1 (ko) * | 2008-04-11 | 2010-05-25 | 삼성에스디에스 주식회사 | 빌딩 자동 제어 시스템에서 알람 전송 방법 및 제어 장치 |
KR20170128892A (ko) * | 2016-05-16 | 2017-11-24 | 인하대학교 산학협력단 | Sdn상의 멀티캐스트 패킷 손실 위치 탐지 방법 |
Family Cites Families (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100497524B1 (ko) * | 2003-01-29 | 2005-07-01 | 삼성전자주식회사 | 근거리 무선 통신 장치 및 그 핸드오프 처리방법 |
-
2006
- 2006-01-27 KR KR1020060008901A patent/KR100756183B1/ko not_active IP Right Cessation
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
KR100959099B1 (ko) * | 2008-04-11 | 2010-05-25 | 삼성에스디에스 주식회사 | 빌딩 자동 제어 시스템에서 알람 전송 방법 및 제어 장치 |
KR20170128892A (ko) * | 2016-05-16 | 2017-11-24 | 인하대학교 산학협력단 | Sdn상의 멀티캐스트 패킷 손실 위치 탐지 방법 |
Also Published As
Publication number | Publication date |
---|---|
KR100756183B1 (ko) | 2007-09-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110995697B (zh) | 一种大数据传输方法及系统 | |
EP2119085B1 (en) | Enhanced error control communication systems and methods | |
US20040052234A1 (en) | Method and system for dispatching multiple TCP packets from communication systems | |
US8320250B2 (en) | Method and arrangement for TCP flow control | |
US7965674B2 (en) | Sub-segment based transport layer protocol for wireless medium | |
US6785259B2 (en) | Enhanced transmission of critical data | |
US9577791B2 (en) | Notification by network element of packet drops | |
US20030131079A1 (en) | Performance enhancing proxy techniques for internet protocol traffic | |
KR20130082070A (ko) | 통신 장치 및 통신 방법 | |
WO2014092779A1 (en) | Notification by network element of packet drops | |
US20090268742A1 (en) | Session relay device and session relay method | |
JP2005520374A (ja) | Tcp/ipに対する変更 | |
JP2005244897A (ja) | 信頼性のある通信方法及びその装置 | |
CN112511377B (zh) | 一种基于arq和udp协议的tcp网络加速方法 | |
CN111092907B (zh) | 基于udp协议的数据流快速传输方法、系统及介质 | |
KR100756183B1 (ko) | 페이크 응답 계층을 구비하는 네트워크 전송 장치와 이를이용한 티씨피 패킷 송수신 방법 | |
US11470502B2 (en) | Congestion notification by data packet from intermediate node | |
JP4805072B2 (ja) | 通信システム | |
KR100913897B1 (ko) | 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜혼잡제어방법 | |
KR101231793B1 (ko) | Tcp 세션 최적화 방법 및 네트워크 노드 | |
Chandra et al. | TCP performance for future IP-based wireless networks | |
EP1733527B1 (en) | Technique for handling outdated information units | |
CN115499108A (zh) | 一种基于udp协议的闭环网络通信方法及系统 | |
KR101396785B1 (ko) | 네트워크 장치에서 tcp 기능을 수행하는 방법 | |
KR100812822B1 (ko) | 무선 네트워크 시스템에서 목적지 상태에 기초한 무선데이터 통신 방법 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E701 | Decision to grant or registration of patent right | ||
GRNT | Written decision to grant | ||
FPAY | Annual fee payment |
Payment date: 20120727 Year of fee payment: 6 |
|
FPAY | Annual fee payment |
Payment date: 20130730 Year of fee payment: 7 |
|
FPAY | Annual fee payment |
Payment date: 20160801 Year of fee payment: 10 |
|
LAPS | Lapse due to unpaid annual fee |