KR20110078564A - 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 - Google Patents
멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 Download PDFInfo
- Publication number
- KR20110078564A KR20110078564A KR1020090135410A KR20090135410A KR20110078564A KR 20110078564 A KR20110078564 A KR 20110078564A KR 1020090135410 A KR1020090135410 A KR 1020090135410A KR 20090135410 A KR20090135410 A KR 20090135410A KR 20110078564 A KR20110078564 A KR 20110078564A
- Authority
- KR
- South Korea
- Prior art keywords
- data
- chunk
- flag field
- field value
- round trip
- Prior art date
Links
- 238000004891 communication Methods 0.000 title claims abstract description 84
- 238000000034 method Methods 0.000 title claims abstract description 52
- 230000005540 biological transmission Effects 0.000 claims description 52
- 238000012545 processing Methods 0.000 claims description 15
- 230000008859 change Effects 0.000 claims description 9
- 238000004590 computer program Methods 0.000 claims description 3
- 230000004044 response Effects 0.000 abstract description 4
- 238000007726 management method Methods 0.000 description 16
- 238000010586 diagram Methods 0.000 description 8
- 230000007246 mechanism Effects 0.000 description 5
- 230000000052 comparative effect Effects 0.000 description 4
- 238000004088 simulation Methods 0.000 description 4
- 238000012546 transfer Methods 0.000 description 4
- 230000008569 process Effects 0.000 description 3
- 230000008901 benefit Effects 0.000 description 2
- 230000015556 catabolic process Effects 0.000 description 2
- 238000006731 degradation reaction Methods 0.000 description 2
- 230000009977 dual effect Effects 0.000 description 2
- 238000005516 engineering process Methods 0.000 description 2
- 230000011664 signaling Effects 0.000 description 2
- 238000003491 array Methods 0.000 description 1
- 239000000919 ceramic Substances 0.000 description 1
- 238000013500 data storage Methods 0.000 description 1
- 238000002474 experimental method Methods 0.000 description 1
- 238000012986 modification Methods 0.000 description 1
- 230000004048 modification Effects 0.000 description 1
- 230000003287 optical effect Effects 0.000 description 1
- 238000011084 recovery Methods 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Images
Classifications
-
- 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/28—Flow control; Congestion control in relation to timing considerations
- H04L47/283—Flow control; Congestion control in relation to timing considerations in response to processing delays, e.g. caused by jitter or round trip time [RTT]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/22—Alternate routing
-
- 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]
- H04L69/163—In-band adaptation of TCP data exchange; In-band control procedures
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
멀티-호밍(Multi-homing) 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법은 (a) 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로(Primary Path)를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로(Alternative Path)를 통하여 상기 리시버로 재전송하는 단계, (b) 상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단하는 단계, 및 (c) 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함할 수 있다.
멀티-호밍(Multi-homing), 주 경로(Primary Path), 대체 경로(Alternative Path), RTT(Round Trip Time), RTO(Retransmission TimeOut)
Description
본 발명은 멀티-호밍 기능을 지원하는 통신 기술에 관한 것으로, 보다 상세하게는 주 경로를 통하여 리시버로 전송된 데이터에 대한 확인 응답에 기초하여 주 경로의 패킷 왕복 시간을 업데이트할 수 있을 뿐만 아니라 대체 경로를 통하여 리시버로 재전송된 데이터에 대한 확인 응답에 기초하여 대체 경로의 패킷 왕복 시간도 업데이트할 수 있는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치에 관한 것이다.
최근에는 멀티-호밍 및 멀티-스트리밍 기능을 제공할 수 있는 새로운 전송 계층 프로토콜, 예컨대, SCTP(Stream Control Transmission Protocol)이 차세대 인터넷 전송 프로토콜로 많은 주목을 받고 있다. SCTP는 UDP(User Datagram Protocol)의 메시지 지향(message-oriented) 특성과 TCP(Transmission Control Protocol)의 혼잡 제어 및 흐름 제어 메커니즘과 같은 특성을 모두 포함하는 등 UDP와 TCP의 장점을 살리도록 설계되었다.
이하에서는 멀티-호밍 및 멀티-스트리밍 기능을 제공할 수 있는 대표적 전송 계층 프로토콜인 SCTP에 관하여 좀더 상세히 살펴본다.
SCTP는 IP 네트워크에서 시그널링 메시지(signaling message)를 전송하기 위해 IETF SIGTRAN (Internet Engineering Task Force Signaling Transport) 워킹 그룹에서 제안되었으며, 2000년 10월에 SCTP 표준 문서 RFC 2960으로 제정되었다. SCTP는 상술한 바오 같이, 기존의 전송 계층 프로토콜에서 제공하지 않았던 기능인 멀티-스트리밍(Muti-streaming)과 멀티-호밍(Multi-homing)을 제공한다.
멀티-스트리밍은 하나의 어소시에이션(SCTP에서의 연결)을 통해 다양한 종류의 데이터를 보낼 수 있는 기능이다. 이를 위해 SCTP의 데이터는 한 스트림 내에서 유지되며, 특정 스트림의 세그먼트가 분실되어도 다른 스트림의 데이터 전송은 정상적으로 이루어진다.
도 1은 호스트들(HOST A, HOST B) 사이의 멀티-스트리밍 개념을 설명하기 위한 도면이다. 도 1을 참조하면, 호스트들(HOST A, HOST B) 사이의 어소시에이션을 보여주며, 하나의 어소시에이션에 3개의 서로 다른 스트림이 있는 것을 알 수 있다.
멀티-호밍은 SCTP에서 많은 관심을 받고 있는 기술 중 하나로, 하나의 SCTP 세션이 한 개 이상의 IP 주소를 사용할 수 있도록 해주는 기술이다. SCTP에서는 여러 개의 주소들 가운데 하나의 주소만 선택하여 데이터를 주고받는데 사용하며 이 주소에 해당하는 전송 경로를 주 경로(Primary path)라고 한다. 그 외의 경로들은 대체 경로(Alternate path)라고 하며, 대체 경로는 데이터 재전송과 백업의 목적으로 사용된다.
도 2는 호스트들(HOST A, HOST B) 사이의 멀티-호밍 개념을 설명하기 위한 도면으로, 호스트들(HOST A, HOST B)이 멀티-호밍으로 연결된 토폴로지를 보여준다. 도 2에서 경로 (A1, B1)가 주 경로이고 경로(A2, B2)를 대체 경로라고 할 때 주 경로의 목적지인 B1이 도달 불가능(unreachable) 상태가 되면 호스트 A가 데이터를 대체 경로의 목적지인 B2로 전달함으로써 SCTP 연결은 유지될 수 있다.
도 3은 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 혼잡 제어 메커니즘을 나타내는 그래프이다. SCTP 혼잡 제어 메커니즘은 TCP 혼잡 제어 메커니즘을 기반으로 하였으며, 슬로우 스타트(Slow-start), 혼잡 회피(Congestion avoidance), 빠른 재전송(Fast retransmit) 등으로 구성된다.
슬로우 스타트는 데이터를 처음 전송할 때 또는 타임아웃(Timeout) 이벤트 이후에 시작된다. 슬로우 스타트 동안, 혼잡 제어 윈도우 크기(Congestion Control Window, cwnd)는 네트워크 상태를 파악하기 위하여 지수승으로 증가한다. 이는 혼잡 윈도우 크기가 슬로우 스타트 임계값(Slow-Start Threshold, ssthresh) 보다 작거나 동등할 때까지 진행된다.
혼잡 윈도우 크기(cwnd)가 슬로우 스타트 임계값(ssthresh) 보다 커질 경우에는, 혼잡 회피가 시작되고 혼잡 윈도우 크기(cwnd)는 선형적으로 증가한다. SCTP는 재전송 타이머가 만료되었을 경우, 혼잡 윈도우 크기(cwnd)와 슬로우 스타트 임계값(ssthresh)을 다음 수학식 1, 2와 같이 조정하며 슬로우 스타트를 시작한다.
여기서, MTU(Maximum Transfer Unit)는 SCTP에서의 최대 전송 단위로 그 크기는 1500 바이트일 수 있다.
수학식 1 및 2를 참조하면, 재전송 타이머가 만료되었을 경우, 슬로우 스타트 임계값(ssthresh)은 혼잡 윈도우 크기의 이분의 일 또는 최대 전송 단위의 2 배 중 큰 값으로 업데이트되며, 혼잡 윈도우 크기(cwnd)는 최대 전송 단위로 업데이트됨을 알 수 있다.
만약 송신자가 동일한 데이터의 손실을 알려주는 확인 응답(SACK: Selective ACKnowledgement)을 연속적으로 4번 수신할 경우(4DUPACKs), 데이터는 재전송 타임아웃을 피하기 위해 즉시 재전송된다. 이를 빠른 재전송이라 하며, 혼잡 윈도우 크기(cwnd)와 슬로우 스타트 임계값(ssthresh)은 다음 수학식 3, 4와 같이 조정된다.
수학식 3 및 4를 참조하면, 빠른 재전송 시 슬로우 스타트 임계값(ssthresh)은 혼잡 윈도우 크기의 이분의 일 또는 최대 전송 단위의 2 배 중 큰 값으로 업데 이트되며, 혼잡 윈도우 크기(cwnd)는 슬로우 스타트 임계값(cwnd) 업데이트됨을 알 수 있다.
SCTP에 있어서의 일반적인 재전송 정책은 다음과 같다. 센더(Sender)는 주 경로로 보낸 데이터가 손실되었을 경우, 대체 경로로 데이터를 재전송한다. 이 같은 SCTP의 재전송 정책은 주 경로가 혼잡하거나 도달 불가능(unreachable)일 때 데이터를 대체 경로로 재전송함으로써 데이터 도착 성공률을 높이며 손실된 데이터가 또 다시 손실되는 것을 막아줄 수 있다.
그러나 표준 SCTP의 재전송 정책은 모든 확인 응답(SACK: Selective ACKnowledge)을 패패킷 송수신 경로의 패킷 왕복 시간(RTT: Round Trip Time)을 업데이트하는데 사용하지 않기 때문에 사실상 SCTP의 성능 저하를 일으킬 수 있다. 이는 칸 알고리즘(Karn's algorithm)에 의한 것이다.
도 4는 SCTP(Steam Control Transmission Protocol)에 적용되는 칸 알고리즘을 설명하기 위한 도면이다. 센더(Host A)가 전송한 데이터가 손실되었을 경우, 센더(sender)는 재전송 타임(RTO: Retransmission Timeout) 경과 후 대체 경로로 손실된 데이터를 재전송한다. 재전송된 데이터를 수신한 리시버(Host B)는 그에 대한 확인 응답(SACK)을 센더(Host A)로 전송한다.
그러나 센더(Host A)는 도착한 확인 응답(SACK)을 대체 경로의 패킷 왕복 시간을 업데이트하는데 사용하지 않는다. 이는 센더(Host A)에서는 도착한 확인 응답(SACK)이 첫 번째 전송한 데이터에 대한 확인응답인지, 재전송된 데이터에 대한 확인 응답인지 알 수 없기 때문이다.
따라서 본 발명이 이루고자 하는 기술적인 과제는 리시버로부터 수신되는 대체 경로로 재전송된 데이터에 대한 확인 응답을 대체 경로의 패킷 왕복 시간 업데이트에 이용할 수 있는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 통신 장치를 제공하는 것이다.
상기 기술적 과제를 해결하기 위한 본 발명의 실시예에 따른 멀티-호밍(Multi-homing) 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법은 (a) 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로(Primary Path)를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로(Alternative Path)를 통하여 상기 리시버로 재전송하는 단계, (b) 상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단하는 단계, 및 (c) 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 다른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법은 (a) 주 경로를 통하여 리시버로 전송되는 제1 데이터 청크 및 및 대체 경로를 통하여 상기 리시버로 재전송되는 제2 데이터 청크 각각에 포함된 데이터의 전송 순서 번호(Transmission Sequence Number), 플래그 필드 값, 및 상기 데이터 청크들 각각의 전송 시간을 저장하는 단계, (b) 상기 리시버로부터 수신되는 확인 응답 청크에 포함된 데이터의 전송 순서 번호, 플래그 필드 값, 및 상기 확인 응답 청크의 수신 시간을 저장하는 단계, (c) 상기 제1 데이터 청크 및 상기 제2 데이터 청크 중에서 상기 확인 응답 청크에 포함된 데이터의 전송 순서 번호 및 플래그 필드 값과 동일한 데이터의 전송 번호 및 플래그 필드 값을 갖는 데이터 청크를 선택하는 단계, 및 (d) 상기 (c) 단계에서 선택된 데이터 청크의 전송 시간 및 상기 확인 응답의 수신 시간에 기초하여 상기 주 경로 또는 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함할 수 있다.
본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법들 각각은 컴퓨터로 읽을 수 있는 기록 매체에 저장된 상기 컴퓨터 시스템의 부팅 방법을 실행하기 위한 컴퓨터 프로그램을 실행함으로써 구현될 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 실시예에 따른, 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로를 통하여 상기 리시버로 재전송하는 멀티-호밍 기능을 제공하는 통신 장치는, 멀티-호밍 지원 모듈, 패킷 처리 모듈, 및 패킷 왕복 시간 관리 모듈을 포함할 수 있다.
상기 멀티-호밍 지원 모듈은 상기 리시버와의 다수의 패킷 송수신 경로들을 형성하고, 상기 주 경로의 혼잡 정도 및 상기 도달 불가능 여부에 기초하여 패킷 송수신 경로를 상기 주 경로에서 대체 경로로 변경할 수 있다. 상기 패킷 처리 모듈은 상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단할 수 있다.
상기 패킷 왕복 시간 관리 모듈은 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다.
상기 기술적 과제를 해결하기 위한 본 발명의 다른 실시예에 따른 통신 장치는 저장 모듈, 패킷 처리 모듈, 및 패킷 왕복 시간 관리 모듈을 포함할 수 있다. 상기 저장 모듈은 주 경로를 통하여 리시버로 전송되는 제1 데이터 청크, 대체 경로를 통하여 상기 리시버로 재전송되는 제2 데이터 청크, 및 상기 리시버로부터 수신되는 확인 응답 청크 각각에 포함된 데이터의 전송 순서 번호(Transmission Sequence Number), 플래그 필드 값, 및 상기 데이터 청크들 각각의 전송 시간을 저장할 수 있다.
상기 패킷 처리 모듈은 상기 제1 데이터 청크 및 상기 제2 데이터 청크 중에서 상기 확인 응답 청크에 포함된 데이터의 전송 순서 번호 및 플래그 필드 값과 동일한 데이터의 전송 번호 및 플래그 필드 값을 갖는 데이터 청크를 선택할 수 있다. 상기 패킷 왕복 시간 관리 모듈은 상기 선택된 데이터 청크의 전송 시간 및 상기 확인 응답의 수신 시간에 기초하여 상기 주 경로 또는 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다.
상술한 바와 같이 본 발명에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치는 대체 경로를 통하여 리시버로 재전송된 데이터에 대한 확인 응답을 이용하여 대체 경로의 패킷 왕복 시간을 업데이트할 수 있으며, 오버헤드 발생이 방지되는 할 수 있는 효과가 있다.
본 발명과 본 발명의 동작상의 이점 및 발명의 실시에 의하여 달성되는 목적을 충분히 이해하기 위해서는 본 발명의 바림직한 실시 예를 예시하는 첨부 도면 및 첨부 도면에 기재된 내용을 참조하여야만 한다.
본 명세서에 있어서는 어느 하나의 구성요소가 다른 구성요소로 데이터 또는 신호를 '전송'하는 경우에는 상기 구성요소는 상기 다른 구성요소로 직접 상기 데이터 또는 신호를 전송할 수 있고, 적어도 하나의 또 다른 구성요소를 통하여 상기 데이터 또는 신호를 상기 다른 구성요소로 전송할 수 있음을 의미한다.
이하, 첨부된 도면을 참조하여 본 발명의 바람직한 실시예를 설명함으로써 본 발명을 상세히 설명한다. 각 도면에 제시된 동일한 참조부호는 동일한 부재를 나타낸다.
도 5는 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 장치의 블락도이다. 도 5에 도시된 통신 장치(100)는 무선 통신 기능을 갖고, 다양한 형태의 데이터 처리 능력을 보유한 전자 장치이다. 통신 장치(100)의 바람직한 예로서 노트북, PDA, 휴대폰 등과 같은 모바일 기기일 수도 있고, 데스크탑 컴퓨터와 같은 고정 기기일 수도 있다. 그러나 본 발명의 범위가 이에 한정되는 것은 아니다.
상기 통신 장치(100)는 SCTP(Stream Control Transmission Protocol)을 이용하여 멀티-호밍 기능을 제공하는 통신 장치일 수 있다. 이하에서는, SCTP를 통신 프로토콜로 이용하는 통신 장치를 예로 들어 본 발명의 기술적 사상을 설명한다. 그러므로 이하에서 통신 프로토콜이라 함은 STCP를 의미할 수 있다.
상기 통신 장치(100)는 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로를 통하여 상기 리시버로 재전송할 수 있다.
여기서, 데이터 청크 전송 경로는 멀티-호밍 지원 모듈(120)에 의하여 주 경로에서 대체 경로로 변경될 수 있다. 즉, 상기 데이터 청크는 상기 주 경로의 혼잡 정도 및 상기 도달 불가능 여부에 기초하여 상기 제1 데이터 청크에 포함되어 상기 주 경로를 통하여 상기 리시버로 전송되거나 상기 제2 데이터 청크에 포함되어 상기 대체 경로를 통하여 상기 리시버로 전송될 수 있다.
또한, 상기 통신 장치(100)는 주 경로를 통하여 수신되는 데이터에 대한 확인 응답에 기초하여 주 경로의 패킷 왕복 시간(RTT: Round Trip Time)을 업데이트할 수 있으며, 대체 경로를 통하여 수신되는 데이터에 대한 확인 응답에 기초하여 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다.
주 경로 또는 대체 경로의 패킷 왕복 시간을 업데이트할지는 확인 응답 청크에 포함된 플래그 필드 값에 의하여 결정될 수 있다. 확인 응답 청크의 플래그 필드 값이 '01'이면 상기 확인 응답 청크는 주 경로를 통하여 전송된 데이터에 대한 확인 응답 청크이며, 상기 플래그 필드 값이 '10'이면 상기 확인 응답 청크는 대체 경로를 통하여 전송된 데이터에 대한 확인 응답으로 판단될 수 있다. 그러나 본 발명의 범위가 이에 한정되는 것은 아니다. 플래그 필드 값은 상기 제1 데이터 청크, 상기 제2 데이터 청크, 및 상기 데이터에 대한 확인 응답 청크의 플래그 필드에서 사용되지 않는 부분에 저장됨이 바람직하다.
도 5를 참조하면, 상기 통신 장치(100)는 인터페이스 모듈(110), 멀티-호밍 지원 모듈(120), 패킷 생성 모듈(140), 정보 관리 모듈(150), 및 제어 모듈(130)을 포함한다. 상기 인터페이스 모듈(110)은 다른 통신 장치와 통신을 수행한다. 인터페이스 모듈(110)은 무선 매체를 통해서 패킷을 송수신할 수 있다.
멀티-호밍 지원 모듈(120)은 인터페이스 모듈(110)을 통해서 다른 통신 장치와 복수의 통신 커넥션을 형성하는데, 상기 통신 커넥션은 SCPT에 있어서의 어소시에이션(association)일 수 있다. 보다 구체적으로 멀티-호밍 지원 모듈(120)은 통신 장치에 여러 개의 주소가 지정되는 것을 허용함으로써 각 주소를 통해서 다른 통신 장치와 패킷을 송수신할 수 있는 복수의 경로를 확립하게 된다.
복수의 경로 중 실제로 패킷을 송수신하는데 사용되는 경로를 주 경로(Primary Path)라 하며, 주 경로를 제외한 나머지 경로들은 주 경로를 통해서 전송한 패킷이 손실되거나, 주 경로가 혼잡하거나, 주 경로가 일시적으로 디스커넥션 되는 경우 등에 있어서, 패킷을 재전송하는데 이용될 수 있다. 주 경로를 대신하여 패킷을 송수신하는 경로를 대체 경로(Alternative Path)라 한다.
즉, 멀티-호밍 지원 모듈(120)은 리시버(Receiver)와의 패킷 송수신이 원할하게 수행될 수 없는 경우에는 패킷 송수신 경로를 상기 주 경로에서 대체 경로로 변경할 수 있다. 예를 들어 SCTP에서는 임의의 주소에 대하여 T3-rtx 타이머가 만료(expire)되는 경우 에러 카운터(error counter)를 증가시키고 에러 카운터가 소정의 파라미터를 초과하는 경우 해당 주소를 통해 설정된 경로를 비활성화시키게 된다. 따라서 사용중이던 주 경로가 비활성화된다면 멀티-호밍 지원 모듈(120)은 다른 경로(즉, 대체 경로)를 주 경로로 설정할 수 있다.
또한, SCTP에 있어서, 주 경로에 대한 타임 아웃이 소정의 횟수 이상 발생할 경우, 시간 상으로는 64초, 주 경로는 일시적으로 디스커넥션된 것이 아니라 아예 디스커넥션된 것으로 간주되며, 패킷 전송 경로는 주 경로에서 대체 경로로 완전히 변경된다. 즉, 이러한 경우에는 대체 경로가 주 경로가 되는 것이다.
또한, 상기 멀티-호밍 지원 모듈(120)은 통신 장치의 핸드오버(handover)시에 주 경로를 변경할 수도 있다.
패킷 생성 모듈(140)은 리시버에게 전송할 패킷을 생성한다. 패킷 생성 모듈(140)이 생성하는 패킷은 상기 통신 장치(100)가 사용하는 어플리케이션에 따라서 다양한 데이터를 포함할 수 있는데, VoIP에 기반한 음성 데이터나 동영상 파일과 같은 멀티미디어 데이터가 그 예일 수 있다.
정보 관리 모듈(150)은 제어 모듈(130)이 전송률을 제어하는데 사용하는 전 송률 제어정보를 관리한다. 예컨대, 정보 관리 모듈(150)은 상기 주 경로 및 상기 대체 경로의 혼잡 제어 변수를 업데이트할 수 있다. 여기서, 혼잡 제어 변수는 혼잡 윈도우 크기(Congestion Window; cwnd) 및 슬로우 스타트 임계값(Solw-start Threshold; ssthresh)을 포함할 수 있다. 또한, 정보 관리 모듈(150)은 상기 주 경로 및 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수도 있다.
상기 정보 관리 모듈(150)은 저장 모듈(152), 패킷 처리 모듈(144), 및 변수 관리 모듈(156)을 포함한다. 상기 저장 모듈(152)은 패킷 송수신 경로의 혼잡 제어 변수(예컨대, 혼잡 윈도우 크기 및 슬로우 스타트 임계값 등)를 저장할 수 있다.
또한, 상기 저장 모듈(152)은 주 경로를 통하여 리시버로 전송되는 제1 데이터 청크, 대체 경로를 통하여 상기 리시버로 재전송되는 제2 데이터 청크, 및 상기 리시버로부터 수신되는 확인 응답 청크 각각에 포함된 데이터의 전송 순서 번호(Transmission Sequence Number), 플래그 필드 값, 및 상기 데이터 청크들 각각의 전송 시간을 저장할 수 있다.
상기 패킷 처리 모듈(154)은 리시버로부터 수신되는 패킷을 분석하여 상기 주 경로의 일시적 디스커넥션 여부, 상기 주 경로의 타임 아웃 발생 여부, 및 상기 데이터에 대한 확인 응답 수신 경로 등을 판단할 수 있다.
예컨대, 상기 패킷 처리 모듈(154)은 상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단하고, 그 판단 결과는 패킷 왕복 시간을 업데이트할 경로가 주 경로인지 아니면 대체 경로인지를 결정하는 기준이 될 수 있다.
그러면, 상기 RTT 관리 모듈(156)은 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제1 플래그 필드 값과 일치하면 상기 주 경로의 패킷 왕복 시간을 업데이트하고, 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다.
또한, 상기 패킷 처리 모듈(154)은 상기 제1 데이터 청크 및 상기 제2 데이터 청크 중에서 상기 확인 응답 청크에 포함된 데이터의 전송 순서 번호 및 플래그 필드 값과 동일한 데이터의 전송 번호 및 플래그 필드 값을 갖는 데이터 청크를 선택할 수 있다. 여기서, 선택된 데이터 청크가 수신되는 패킷 송수신 경로는 패킷 왕복 시간 업데이트 대상일 수 있다.
그러면, 상기 RTT 관리 모듈(156)은 상기 선택된 데이터 청크의 전송 시간 및 상기 확인 응답의 수신 시간에 기초하여 상기 주 경로 또는 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다. 예컨대, 상기 패킷 왕복 시간 관리 모듈(156)은 상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제1 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 주 경로의 패킷 왕복 시간을 업데이트하고, 상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제2 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 대체 경로의 패킷 왕복 시간을 업데이트할 수 있다.
상술한 바와 같이, 본 발명의 실시예에 따른 통신 장치(100)는 주 경로의 패킷 왕복 시간을 업데이트할 수 있을 뿐만 아니라, 대체 경로로 수신된 확인 응답 청크에 포함된 플래그 필드 값에 기초하여 대체 경로의 패킷 왕복 시간도 업데이트할 수 있다. 그러므로 본 발명의 실시예에 따른 통신 장치(100)는 칸 알고리즘 수행에 의한 표준 SCTP의 발생할 수 있는 성능 열화를 어느 정도 보상할 수 있으며, 타임스탬프(Timestamp) 청크를 이용한 RTT 업데이트 방법에서 발생할 수 있는 오버헤드를 방지할 수도 있다.
도 6은 표준 SCTP와 본 발명의 실시예에 따른 RTT 업데이트 방법이 적용된 SCTP의 RTT 업데이트 상의 차이점을 비교하기 위한 도면이다. 도 6의 (a)는 표준 SCTP에 따른 RTT 업데이트 과정을 나타내고, 도 6의 (b)는 본 발명의 실시예에 따른 RTT 업데이트 방법이 적용된 SCTP에 따른 RTT 업데이트 과정을 나타낸다.
도 6의 (a)에서 센더(Host A)는 리시버(Host B)로부터 수신된 확인 응답이 주 경로를 통하여 첫 번째 전송한 데이터에 대한 확인 응답인지 대체 경로를 통하여 재전송한 데이터에 대한 확인 응답인지 구별할 수가 없으므로 도착한 확인 응답을(SACK)을 RTT 업데이트 하는데 사용하지 않는다.
그러나 도 6의 (b)에서 센서(Host A)는 SCTP 청크(chunk)의 사용되지 않는 플래그 필드 2비트를 사용하여 리시서(Host B)로부터 수신된 확인 응답(SACK)이 대체경로로 재전송된 데이터에 대한 확인 응답임을 알고 이를 대체 경로의 RTT를 업데이트 하는데 사용할 수 있다.
이하, 그림 6의 (b)와 같이 플래그 필드의 2비트가 패킷 송수신 경로 구별에 사용하되는 경우에 있어서, 패킷 송수신 경로의 RTT가 업데이트 구체적인 예를 살펴본다.
센더가 데이터 청크를 주 경로를 통하여 첫 번째로 전송하는 경우 데이터 청크의 플래그 필드 값은 '01'이다. 그런 다음, 플래그 필드 값이 '01'인 확인 응답 청크가 수신되면 주 경로의 RTT가 업데이트된다. 반면, 센더가 상기 데이터 청크를 대체 경로를 통하여 두 번째로 전송하는 경우 데이터 청크의 플래그 필드 값은 '10'이다. 그런 다음, 플래그 필드 값이 '10'인 확인 응답 청크가 수신되면 대체 경로의 RTT가 업데이트된다.
센더가 데이터 청크를 세 번째 이상 전송하는 경우 데이터 청크의 플래그 필드 값은 '11'이다. 그런 다음, 플래그 필드 값이 '11'인 확인 응답 청크가 수신되면 주 경로 및 대체 경로의 RTT는 업데이트되지 않는다. 이는 2비트를 사용하여 전송 횟수를 표시하기 때문에 세 번 이상 데이터를 전송한 경우, 확인 응답 청크가 몇 번째 전송된 데이터에 대한 응답으로 수신된 것인지가 명확하지 않아 주 경로 및 대체 경로 모두의 RTT를 업데이트하지 않는 것이 바람직하기 때문이다.
상기 제어 모듈(130)은 상기 통신 장치(100)를 구성하는 각 모듈들의 동작을 제어할 수 있다. 또한 제어 모듈(130)은 제어정보 관리 모듈(150)에 의해 관리되는 패킷 송수신 경로의 혼잡 윈도우 크기 및 슬로우 스타트 임계값에 기초하여 데이터 전송률을 제어할 수 있다.
도 5를 참조하여 설명한 통신 장치(100)를 구성하는 각 '모듈'은 본 발명의 기술적 사상을 수행하기 위한 소프트웨어, 하드웨어, 또는 소프트웨어와 하드웨어의 결합에 의하여 구현될 수 있다.
본 발명의 실시예에 따른 통신 장치(100) 또는 그 일부는 다양한 형태들의 패키지를 이용하여 실장될 수 있다. 상기 패키지는 PoP(Package on Package), Ball grid arrays(BGAs), Chip scale packages(CSPs), Plastic Leaded Chip Carrier(PLCC), Plastic Dual In-Line Package(PDIP), Die in Waffle Pack, Die in Wafer Form, Chip On Board(COB), Ceramic Dual In-Line Package(CERDIP), Plastic Metric Quad Flat Pack(MQFP), Thin Quad Flatpack(TQFP), Small Outline(SOIC), Shrink Small Outline Package(SSOP), Thin Small Outline(TSOP), Thin Quad Flatpack(TQFP), System In Package(SIP), Multi Chip Package(MCP), Wafer-level Fabricated Package(WFP), Wafer-Level Processed Stack Package(WSP) 일 수 있다. 그러나 본 발명의 범위가 이에 한정되는 것은 아니다.
도 7은 본 발명의 다른 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 RTT 업데이트 방법을 설명하기 위한 순서도이다. 이하, 도 5 및 도 7을 참조하여 그 과정을 순차적으로 살펴본다.
통신 장치(100)는 인터페이스 모듈(110)을 이용하여 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크를 주 경로를 통하여 리시버로 전송한다(S70). 상기 주 경로가 혼잡하거나 도달불가능일 경우, 멀티-호밍 지원 모듈(120)은 패킷 송수신 경로를 주 경로에서 대체 경로로 변경한다(S71).
그러면, 통신 장치(100)는 인터페이스 모듈(110)을 이용하여 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로를 통하여 상기 리시버로 재전송하고, 리시버로부터 제1 데이터 청크 또는 제2 데이터 청크에 포함된 데이터에 대한 확인 응답 청크를 수신한다(S72).
패킷 처리 모듈(154)은 확인 응답 청크의 플래그 필드 값이 제1 플래그 필드와 같은 지를 판단한다(S73). 확인 응답 청크의 플래그 필드 값이 제1 플래그 필드와 같으면, RTT 관리 모듈(156)은 주 경로의 패킷 왕복 시간을 업데이트하며(S75), 그렇지 않으면 상기 패킷 처리 모듈(154)은 확인 응답 청크의 플래그 필드 값이 제2 플래그 필드와 같은 지를 판단한다(S74). 확인 응답 청크의 플래그 필드 값이 제2 플래그 필드와 같으면, RTT 관리 모듈(156)은 대체 경로의 패킷 왕복 시간을 업데이트한다(S76).
도 8은 도 7의 혼잡 제어 방법에 있어서, 멀티-호밍 기능을 제공하는 통신 프로토콜의 하나인 SCTP 패킷과 청크(Chunk) 형식을 나타낸다. 도 8을 참조하면, SCTP 패킷에는 센더의 어드레스(Source Port Address), 리시버의 어드레스(Destination Port Address), 증명 태크(Verification Tag), 및 체크섬(Checksum)을 포함하는 헤더(Header) 및 여러 개의 청크들(chunks)이 포함되며, 청크들 각각은 청크의 형태(Type)을 나타내는 필드, 플래그(Flag) 필드, 청크의 길이(Length)를 나타내는 필드, 및 청크 정보로 구성됨을 알 수 있다.
여기서, 패킷 처리 모듈(154)은 청크의 플래그 필드에서 사용되지 않는 비트를 사용할 수 있다. 플래그 필드에서 사용되지 않는 비트는 3~8비트 정도이며, 일반적으로 SCTP에 있어서는 하나의 주 경로와 하나의 대체 경로를 사용하기 때문에 상기 패킷 처리 모듈(154)은 2 비트만을 이용하여 주 경로와 대체 경로를 구별할 수 있다.
본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어 서의 패킷 왕복 시간 업데이트 방법은 또한 컴퓨터로 읽을 수 있는 기록매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법은 컴퓨터로 읽을 수 있는 기록 매체에 저장된 상기 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법을 실행하기 위한 컴퓨터 프로그램을 실행함으로써 구현될 수 있다.
컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록장치를 포함한다. 예컨대, 컴퓨터가 읽을 수 있는 기록매체에는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 데이터 저장장치 등이 있다.
또한 컴퓨터가 읽을 수 있는 기록매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산방식으로 컴퓨터가 읽을 수 있는 코드가 저장되고 실행될 수 있다. 그리고 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법을 구현하기 위한 기능적인 (functional) 프로그램, 코드 및 코드 세그먼트들은 본 발명이 속하는 기술분야의 프로그래머들에 의해 용이하게 추론될 수 있다.
도 9는 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 장치의 성능을 시뮬레이션하기 위한 조건을 나타낸다. 패킷 송수신 경로 구별을 위해서는 청크에서 플래그 필드에서 사용되지 않는 2비트가 이용된다. 센더와 리시버 사이의 종단간 단방향 전파 지연은 250ms이고, 대역폭은 10Mbps이며 실험은 200초 동안 수 행된다. 패킷 손실률에 따른 통신 성능 변화를 위해 주 경로의 패킷 손실률은 0 내지 16%, 대체 경로의 패킷 손실률은 0 내지 10% 범위 내에서 가변된다.
도 10a 내지 도 10c는 멀티-호밍 기능을 제공하는 본 발명의 실시예에 따른 통신 장치 및 본 발명의 비교예에 따른 통신 장치에 있어서, 주 경로의 재전송 타임아웃(RTO: Retransmission TimeOut) 변화의 시뮬레이션 결과를 나타내는 그래프이다. 도 10a는 표준 SCTP의, 도 10b는 타임스탬프 기법을 적용한 SCTP의, 도 10c는 본 발명의 실시예에 따른 RTT 업데이트 방법을 적용한 SCTP의 주 경로의 RTO 변화를 나타낸다.
도 10a 내지 도 10c를 참조하면, 세 기법 모두 패킷 손실로 인해 타임아웃이 발생해도 주 경로에 대한 빈번한 RTT 업데이트에 기초하여 RTO 값의 빠른 복구가 이루어짐을 알 수 있다.
도 11a 내지 도 11c는 멀티-호밍 기능을 제공하는 본 발명의 실시예에 따른 통신 장치 및 본 발명의 비교예에 따른 통신 장치에 있어서, 대체 경로의 재전송 타임아웃 변화의 시뮬레이션 결과를 나타내는 그래프이다. 도 11a는 표준 SCTP의, 도 11b는 타임스탬프 기법을 적용한 SCTP의, 도 11c는 본 발명의 실시예에 따른 RTT 업데이트 방법을 적용한 SCTP의 대체 경로의 RTO 변화를 나타낸다.
도 11a를 참조하면, 표준 SCTP의 칸 알고리즘 사용으로 인해 대체 경로의 RTT 업데이트가 원활히 이루어지지 않아 RTO 값의 빠른 갱신이 이루어지지 않음을 알 수 있다.
도 11b를 참조하면, 타임스탬프 기법이 적용되면 표준 SCTP와는 달리 RTO 업 데이트가 빨리 이루어짐을 알 수 있다. 이는 타임스탬프 기법에 따라 칸 알고리즘 사용이 중지되어 대체 경로로 재전송된 데이터에 대한 확인 응답도 RTT를 업데이트 하는데 이용되기 때문이다.
도 11c를 참조하면, 본 발명의 실시예에 따른 RTT 업데이트 방법이 적용되어도 대체 경로의 RTO 값이 타임스탬프 기법이 적용된 경우와 같이 빨리 업데이트됨을 알 수 있다. 그러나 본 발명의 실시예에 따른 RTT 업데이트 방법은 타임스탬프 기법과 같은 추가적인 청크를 이용하지 않음에도 타임스탬프 기법과 대등한 성능을 유지하는 것이다.
발명은 도면에 도시된 일 실시 예를 참고로 하여 멀티-호밍 기능을 제공하는 SCTP를 중심으로 설명되었으나 이는 예시적인 것에 불과하며, 본 기술 분야의 통상의 지식을 가진 자라면 이로부터 다양한 변형 및 균등한 타 실시 예가 가능하다는 점을 이해할 것이다. 따라서, 본 발명의 진정한 기술적 보호 범위는 첨부된 등록청구범위의 기술적 사상에 의해 정해져야 할 것이다.
도 1은 호스트들 사이의 멀티-스트리밍 개념을 설명하기 위한 도면이다.
도 2는 호스트들 사이의 멀티-호밍 개념을 설명하기 위한 도면이다.
도 3은 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 혼잡 제어 메커니즘을 나타내는 그래프이다.
도 4는 SCTP(Steam Control Transmission Protocol)에 적용되는 칸 알고리즘을 설명하기 위한 도면이다.
도 5는 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 장치의 블락도이다.
도 6은 표준 SCTP와 본 발명의 실시예에 따른 RTT(Round Trip Time) 업데이트 방법이 적용된 SCTP의 RTT 업데이트 상의 차이점을 비교하기 위한 도면이다.
도 7은 본 발명의 다른 실시예에 따른 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 RTT 업데이트 방법을 설명하기 위한 순서도이다.
도 8은 도 7의 혼잡 제어 방법에 있어서, 멀티-호밍 기능을 제공하는 통신 프로토콜의 하나인 SCTP 패킷과 청크(Chunk) 형식을 나타낸다.
도 9는 본 발명의 실시예에 따른 멀티-호밍 기능을 제공하는 통신 장치의 성능을 시뮬레이션하기 위한 조건을 나타낸다.
도 10a 내지 도 10c는 멀티-호밍 기능을 제공하는 본 발명의 실시예에 따른 통신 장치 및 본 발명의 비교예에 따른 통신 장치에 있어서, 주 경로의 재전송 타임아웃 변화의 시뮬레이션 결과를 나타내는 그래프이다.
도 11a 내지 도 11c는 멀티-호밍 기능을 제공하는 본 발명의 실시예에 따른 통신 장치 및 본 발명의 비교예에 따른 통신 장치에 있어서, 대체 경로의 재전송 타임아웃 변화의 시뮬레이션 결과를 나타내는 그래프이다.
Claims (15)
- (a) 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로(Primary Path)를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로(Alternative Path)를 통하여 상기 리시버로 재전송하는 단계;(b) 상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단하는 단계; 및(c) 상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함하는 멀티-호밍(Multi-homing) 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제1항에 있어서, 상기 멀티-호밍 기능을 제공하는 통신 프로토콜은SCTP(Stream Control Transmission Protocol)인 것을 특징으로 하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제1항에 있어서, 상기 제1 플래그 필드 값 및 상기 제2 플래그 필드 값 각각은 상기 데이터가 상기 주 경로를 통하여 상기 리시버로 전송되었는지 상기 대체 경로를 통하여 상기 리시버로 전송되었는지를 나타내는 것을 특징으로 하는 멀티- 호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제1항에 있어서, 상기 제1 플래그 필드 값 및 상기 제2 플래그 필드 값은상기 제1 데이터 청크, 상기 제2 데이터 청크, 및 상기 데이터에 대한 확인 응답 청크의 플래그 필드에서 사용되지 않는 부분에 저장되는 것을 특징으로 하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제1항에 있어서, 상기 (a) 단계에 있어서,상기 데이터는상기 주 경로의 혼잡 정도 및 상기 도달 불가능 여부에 기초하여, 상기 제1 데이터 청크에 포함되어 상기 주 경로를 통하여 상기 리시버로 전송되거나 상기 제2 데이터 청크에 포함되어 상기 대체 경로를 통하여 상기 리시버로 전송되는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- (a) 주 경로를 통하여 리시버로 전송되는 제1 데이터 청크 및 및 대체 경로를 통하여 상기 리시버로 재전송되는 제2 데이터 청크 각각에 포함된 데이터의 전송 순서 번호(Transmission Sequence Number), 플래그 필드 값, 및 상기 데이터 청크들 각각의 전송 시간을 저장하는 단계;(b) 상기 리시버로부터 수신되는 확인 응답 청크에 포함된 데이터의 전송 순 서 번호, 플래그 필드 값, 및 상기 확인 응답 청크의 수신 시간을 저장하는 단계;(c) 상기 제1 데이터 청크 및 상기 제2 데이터 청크 중에서 상기 확인 응답 청크에 포함된 데이터의 전송 순서 번호 및 플래그 필드 값과 동일한 데이터의 전송 번호 및 플래그 필드 값을 갖는 데이터 청크를 선택하는 단계; 및(d) 상기 (c) 단계에서 선택된 데이터 청크의 전송 시간 및 상기 확인 응답의 수신 시간에 기초하여 상기 주 경로 또는 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제6항에 있어서, 상기 (d) 단계는상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제1 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 주 경로의 패킷 왕복 시간을 업데이트하고, 상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제2 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제6항에 있어서, 상기 멀티-호밍 기능을 제공하는 통신 프로토콜은SCTP(Stream Control Transmission Protocol)인 것을 특징으로 하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제6항에 있어서, 상기 플래그 필드 값은상기 데이터가 상기 주 경로를 통하여 상기 리시버로 전송되었는지 상기 대체 경로를 통하여 상기 리시버로 전송되었는지를 나타내는 것을 특징으로 하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제6항에 있어서, 상기 플래그 필드 값은상기 제1 데이터 청크, 상기 제2 데이터 청크, 및 상기 데이터에 대한 확인 응답 청크의 플래그 필드에서 사용되지 않는 부분에 저장되는 것을 특징으로 하는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제6항에 있어서, 상기 (a) 단계에 있어서, 상기 데이터는상기 주 경로의 혼잡 정도 및 상기 도달 불가능 여부에 기초하여, 상기 제1 데이터 청크에 포함되어 상기 주 경로를 통하여 상기 리시버로 전송되거나 상기 제2 데이터 청크에 포함되어 상기 대체 경로를 통하여 상기 리시버로 전송되는 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법.
- 제1항 내지 제 11항 중 어느 한 항에 기재된 멀티-호밍 기능을 제공하는 통 신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법을 실행하기 위한 컴퓨터 프로그램을 저장하는 컴퓨터로 읽을 수 있는 기록 매체.
- 제1 플래그 필드 값 및 데이터를 포함하는 제1 데이터 청크(chunk)를 주 경로를 통하여 리시버로 전송하고, 제2 플래그 필드 값 및 상기 데이터를 포함하는 제2 데이터 청크를 대체 경로를 통하여 상기 리시버로 재전송하는 멀티-호밍 기능을 제공하는 통신 장치에 있어서,상기 리시버와의 다수의 패킷 송수신 경로들을 형성하고, 상기 주 경로의 혼잡 정도 및 상기 도달 불가능 여부에 기초하여 패킷 송수신 경로를 상기 주 경로에서 대체 경로로 변경하는 멀티-호밍 지원 모듈; 및상기 리시버로부터 수신되는 상기 데이터에 대한 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하는지 여부를 판단하는 패킷 처리 모듈; 및상기 데이터에 대한 상기 확인 응답 청크의 플래그 필드 값이 상기 제2 플래그 필드 값과 일치하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 패킷 왕복 시간 관리 모듈을 포함하는 멀티-호밍 기능을 제공하는 통신 장치.
- 주 경로를 통하여 리시버로 전송되는 제1 데이터 청크, 대체 경로를 통하여 상기 리시버로 재전송되는 제2 데이터 청크, 및 상기 리시버로부터 수신되는 확인 응답 청크 각각에 포함된 데이터의 전송 순서 번호(Transmission Sequence Number), 플래그 필드 값, 및 상기 데이터 청크들 각각의 전송 시간을 저장하는 저장 모듈;상기 제1 데이터 청크 및 상기 제2 데이터 청크 중에서 상기 확인 응답 청크에 포함된 데이터의 전송 순서 번호 및 플래그 필드 값과 동일한 데이터의 전송 번호 및 플래그 필드 값을 갖는 데이터 청크를 선택하는 패킷 처리 모듈; 및상기 선택된 데이터 청크의 전송 시간 및 상기 확인 응답의 수신 시간에 기초하여 상기 주 경로 또는 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 패킷 왕복 시간 관리 모듈을 포함하는 멀티-호밍 기능을 제공하는 통신 장치.
- 제14항에 있어서, 상기 패킷 왕복 시간 관리 모듈은상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제1 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 주 경로의 패킷 왕복 시간을 업데이트하고, 상기 확인 응답 청크에 포함된 플래그 필드 값이 상기 제2 데이터 청크에 포함된 플래그 필드 값과 동일하면 상기 대체 경로의 패킷 왕복 시간을 업데이트하는 단계를 포함하는 멀티-호밍 기능을 제공하는 통신 장치.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090135410A KR20110078564A (ko) | 2009-12-31 | 2009-12-31 | 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
KR1020090135410A KR20110078564A (ko) | 2009-12-31 | 2009-12-31 | 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 |
Publications (1)
Publication Number | Publication Date |
---|---|
KR20110078564A true KR20110078564A (ko) | 2011-07-07 |
Family
ID=44918019
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
KR1020090135410A KR20110078564A (ko) | 2009-12-31 | 2009-12-31 | 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 |
Country Status (1)
Country | Link |
---|---|
KR (1) | KR20110078564A (ko) |
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017069338A1 (ko) * | 2015-10-22 | 2017-04-27 | 삼성에스디에스 주식회사 | 데이터 중복 제거의 딕셔너리 동기화 방법 |
CN114285762A (zh) * | 2021-12-03 | 2022-04-05 | 网宿科技股份有限公司 | Rtt的更新方法、更新装置、处理器与通信系统 |
-
2009
- 2009-12-31 KR KR1020090135410A patent/KR20110078564A/ko not_active Application Discontinuation
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
WO2017069338A1 (ko) * | 2015-10-22 | 2017-04-27 | 삼성에스디에스 주식회사 | 데이터 중복 제거의 딕셔너리 동기화 방법 |
CN114285762A (zh) * | 2021-12-03 | 2022-04-05 | 网宿科技股份有限公司 | Rtt的更新方法、更新装置、处理器与通信系统 |
CN114285762B (zh) * | 2021-12-03 | 2024-07-30 | 网宿科技股份有限公司 | Rtt的更新方法、更新装置、处理器与通信系统 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110661723B (zh) | 一种数据传输方法、计算设备、网络设备及数据传输系统 | |
CN103503357B (zh) | 控制网络设备的行为的方法及网络设备 | |
KR100785293B1 (ko) | 다중 tcp확인응답을 이용한 tcp 혼잡 제어 시스템및 그 방법 | |
US7460472B2 (en) | System and method for transmitting information in a communication network | |
Camarillo et al. | Evaluation of transport protocols for the session initiation protocol | |
US8085669B2 (en) | Session relay device and session relay method | |
KR100547749B1 (ko) | 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜의혼잡제어 방법과 시스템 | |
CN104025525A (zh) | 网络元件关于分组丢弃的通知 | |
US20140153574A1 (en) | Notification by network element of packet drops | |
US20060259845A1 (en) | Method and apparatus for acknowledging a bitwise data chunk in wireline and wireless communication systems | |
Natarajan et al. | Non-renegable selective acknowledgments (NR-SACKs) for SCTP | |
Natarajan et al. | Concurrent multipath transfer using transport layer multihoming: Performance under network failures | |
Ladha et al. | On making SCTP robust to spurious retransmissions | |
KR20110078564A (ko) | 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 패킷 왕복 시간 업데이트 방법 및 멀티-호밍 기능을 제공하는 통신 장치 | |
Wang et al. | Applying PR-SCTP to transport SIP traffic | |
Jungmaier et al. | On SCTP multi-homing performance | |
KR101231793B1 (ko) | Tcp 세션 최적화 방법 및 네트워크 노드 | |
Abd et al. | Load sharing in stream control transmission protocol | |
KR100913897B1 (ko) | 재전송 타임아웃 수를 줄이기 위한 전송 제어 프로토콜혼잡제어방법 | |
KR20110078561A (ko) | 멀티-호밍 기능을 제공하는 통신 프로토콜에 있어서의 혼잡 제어 방법 및 멀티-호밍 기능을 제공하는 통신 장치 | |
Sathiaseelan et al. | Reorder notifying TCP (RN‐TCP) with explicit packet drop notification (EPDN) | |
Kothari et al. | Performance enhancement of SACK TCP protocol for wireless network by delaying fast recovery | |
Camarillo et al. | Signalling transport protocols | |
KR101396785B1 (ko) | 네트워크 장치에서 tcp 기능을 수행하는 방법 | |
Nagamalai et al. | Performance of SCTP over high speed wide area networks |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A201 | Request for examination | ||
E902 | Notification of reason for refusal | ||
E601 | Decision to refuse application |