KR20050049864A - 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법 - Google Patents

소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법 Download PDF

Info

Publication number
KR20050049864A
KR20050049864A KR1020030083621A KR20030083621A KR20050049864A KR 20050049864 A KR20050049864 A KR 20050049864A KR 1020030083621 A KR1020030083621 A KR 1020030083621A KR 20030083621 A KR20030083621 A KR 20030083621A KR 20050049864 A KR20050049864 A KR 20050049864A
Authority
KR
South Korea
Prior art keywords
protocol stack
hardware
packet
socket
software
Prior art date
Application number
KR1020030083621A
Other languages
English (en)
Inventor
최현석
Original Assignee
삼성전자주식회사
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by 삼성전자주식회사 filed Critical 삼성전자주식회사
Priority to KR1020030083621A priority Critical patent/KR20050049864A/ko
Priority to US10/993,349 priority patent/US20050111385A1/en
Priority to CNA2004101033865A priority patent/CN1642142A/zh
Publication of KR20050049864A publication Critical patent/KR20050049864A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/161Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields
    • H04L69/162Implementation details of TCP/IP or UDP/IP stack architecture; Specification of modified or new header fields involving adaptations of sockets based mechanisms
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/16Implementation or adaptation of Internet protocol [IP], of transmission control protocol [TCP] or of user datagram protocol [UDP]
    • H04L69/167Adaptation for transition between two IP versions, e.g. between IPv4 and IPv6
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
    • H04L9/40Network security protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/22Parsing or analysis of headers

Abstract

소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치 및 그 통신 방법이 개시된다.
본 발명에 따른 멀티미디어 통신 장치는, 하드웨어를 이용하여 인터넷 프로토콜을 처리하는 하드웨어 프로토콜 스택; 및 소프트웨어를 이용하여 인터넷 프로토콜을 처리하는 소프트웨어 프로토콜 스택을 포함하는 것을 특징으로 한다.
이에 따라, CPU의 처리부담을 줄여 처리속도를 높이는 한편, 동시에 지원되는 채널 수에 제한을 받지 않고, 대용량의 멀티미디어 데이터를 고속으로 전송할 수 있다.

Description

소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치 및 그 통신 방법{Multimedia communication device using software protocol stack and hardware protocol stack and communication method thereof}
본 발명은 TCP/IP 프로토콜을 이용한 멀티미디어 통신 장치에 관한 것으로, 보다 상세하게는 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치 및 그 통신 방법이 제공된다.
컴퓨터의 인터넷 통신을 제공하는 표준 프로토콜인 TCP/IP(Transport Control Protocol/Internet Protocol)는, 다른 네트워크 프로토콜과 마찬가지로 계층(layer)으로 이루어져 있는데, 이러한 계층을 프로토콜 스택(stack), 프로토콜 슈트(suite) 또는 프로토콜 구조라고 한다.
구체적으로, 프로토콜 스택은 TCP/UDP와 IP라는 두 개의 가장 중요한 프로토콜을 기반으로 한다. TCP/UDP 프로토콜은 패킷 단위로 데이터를 전송하며, 각 패킷은 제어 정보를 저장하고 있는 헤더를 가진다. 이 헤더에는 HTTP, SMTP, FTP, TELNET과 같은 어플리케이션 프로토콜을 구분할 수 있는 포트(port) 번호가 포함되며, 이 포트 번호는 목적지 시스템에서 해당 패킷을 처리할 어플리케이션을 결정하는데 이용된다. TCP/UDP 프로토콜을 제4 계층의 프로토콜(Layer 4 Protocol)이라고도 한다.
한편, IP 프로토콜은 물리적인 서브 네트워킹들의 연결과 목적지 IP 주소를 찾아가는 경로를 선택하는 기능을 제공한다. 이를 위해 IP 프로토콜은 인터넷에 연결된 많은 단말이나 노드들의 소스 주소와 목적지 주소를 부여하고 해석한다. 현재는 IP 버전 4(IPv4)가 주로 사용되고 있다. IP 프로토콜을 제3 계층의 프로토콜(Layer 3 Protocol)이라고도 한다.
TCP/IP 프로토콜 스택은, 하위계층으로 제2 계층의 미디어 액세스 제어 계층(Media Access Control Layer: 이하 MAC라 약칭한다)이나 제1 계층의 물리계층(Physical Layer: 이하 PHY라 약칭한다)과 연결되며, 상위계층으로 어플리케이션 프로토콜 계층(Application Layer)과 연결된다.
TCP/IP 프로토콜 스택은 일반적으로 소프트웨어로서 구현되며, 이하에서는 이를 소프트웨어 프로토콜 스택이라 약칭한다. 도 1은 소프트웨어 프로토콜 스택을 사용하는 경우의 TCP/IP 오버헤드를 나타낸 도면이다.
도 1을 참조하면, 각 MTU(Maximum Transfer Unit)별로 각 소프트웨어 프로토콜 스택을 처리하는데 드는 오버헤드가 표시되어 있으며, TCP/IP 프로토콜을 처리하기 위해서는 인터럽트나 체크섬 또는 메모리 복사 등에서 많은 오버헤드가 발생되고 있는 것을 볼 수 있다. 특히, 대용량의 멀티미디어 데이터를 고속으로 전송하는 경우, 소프트웨어 프로토콜 스택만을 사용하면, CPU의 처리 부담이 현저히 늘어나게 되고, 시스템의 전체적인 처리속도가 저하되는 문제점이 발생한다.
한편, 고속의 멀티미디어 데이터를 실시간으로 전송하기 위하여, 전용 하드웨어 프로토콜 스택(칩)을 사용할 수도 있다. 그러나, 하드웨어 프로토콜 스택을 사용한 시스템은 인터넷 연결을 위한 채널 개수에 제한을 받는 문제점이 있다. 최근 시장에서 판매되는 인터넷 프로토콜 전용 칩들은 보통 2~4개의 동시 연결 채널을 지원한다. 그러나, 일반적인 컴퓨터 시스템에서는 여러 가지 인터넷 응용 프로그램들이 동시에 여러 채널을 사용하는 것이 일반적이다. 따라서, 하드웨어 프로토콜 스택만을 사용하는 경우 동시에 실행할 수 있는 인터넷 응용 프로그램의 수가 1~2개로 제한받을 수밖에 없다.
따라서, 본 발명의 목적은 전술한 문제점을 해결하기 위하여 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치 및 그 통신 방법을 제공하는 것이다.
즉, CPU의 처리부담을 줄여 처리속도를 높이는 한편, 동시에 지원되는 채널 수에 제한을 받지 않고, 대용량의 멀티미디어 데이터를 고속으로 전송할 수 있다.
상기 목적은, 하드웨어를 이용하여 인터넷 프로토콜을 처리하는 하드웨어 프로토콜 스택; 및 소프트웨어를 이용하여 인터넷 프로토콜을 처리하는 소프트웨어 프로토콜 스택을 포함하는 것을 특징으로 하는 멀티미디어 통신 장치에 의해 달성된다.
멀티미디어 통신 장치는, 소프트웨어 프로토콜 스택 및 하드웨어 프로토콜 스택 중 하나를 선택하여 패킷을 전송하는 소켓 비교 선택부를 더 포함하는 것이 바람직하다.
소켓 비교 선택부는, 패킷으로부터 어플리케이션 소켓을 지정하는 포트 번호가 포함된 소켓페어를 추출하여 하드웨어 프로토콜 스택에 대한 소정의 소켓페어와 비교하여, 일치하면 하드웨어 프로토콜 스택으로 패킷을 전송하고, 일치하지 않으면 소프트웨어 프로토콜 스택으로 패킷을 전송하는 것이 바람직하다.
멀티미디어 통신 장치는, 소정의 소켓페어를 저장하는 소켓페어 레지스터를 더 포함하며, 소켓페어 레지스터에는, 대용량 및/또는 고속의 데이터 전송을 필요로 하는 멀티미디어 데이터가 하드웨어 프로토콜 스택으로 전송되도록, 하드웨어 프로토콜 스택의 소켓페어가 저장되는 것이 바람직하다.
멀티미디어 통신 장치는, 하드웨어 프로토콜 스택 및 소프트웨어 프로토콜 스택 중 하나를 선택하여 외부로 패킷을 전송할 수 있는 중재부를 더 포함하는 것이 바람직하다.
한편, 본 발명의 다른 분야에 따르면, 상기 목적은 전술한 멀티미디어 통신 장치를 포함하는 것을 특징으로 하는 멀티미디어 장치에 의해서 달성된다.
멀티미디어 장치는 디지털 TV, 모바일 장치, DVD 재생장치 및 멀티미디어 서버 중 어느 하나인 것이 바람직하다.
또 한편, 본 발명의 다른 분야에 따르면, 상기 목적은 (a) 전달받은 패킷으로부터 소켓 페어를 추출하여 하드웨어 프로토콜 스택에 대한 소켓페어인지를 비교하는 단계; (b) 비교결과 하드웨어 프로토콜 스택에 대한 소켓페어와 일치하면, 패킷을 하드웨어 프로토콜 스택으로 전달하는 단계; 및 (c) 비교결과 하드웨어 프로토콜 스택에 대한 소켓페어와 일치하지 않으면, 패킷을 소프트웨어 프로토콜 스택으로 전달하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 통신 방법에 의해서도 달성된다.
이하에서는 첨부된 도면을 참조하여 본 발명의 바람직한 실시 예에 대해 상세히 설명한다.
도 2는 본 발명의 바람직한 실시예에 따른 멀티미디어 통신 장치를 적용한 시스템의 일 예이다.
도 2를 참조하면, 멀티미디어 서버(220)를 통해 디지털 TV(210)나 모바일 장치(230) 등이 대용량의 멀티미디어 데이터를 전송 받아 재생할 수 있다. 각각의 장치에는 본 발명에 따른 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치(211, 221, 및 231)가 포함되어 있다.
디지털 TV(210)나 모바일 장치(230) 등은 본 발명에 따른 멀티미디어 통신 장치를 사용하여, 대용량의 고속 멀티미디어 데이터의 전송 시에는 하드웨어 프로토콜 스택을 사용하고, 그 밖의 멀티미디어 데이터에 대한 제어 데이터나 일반 인터넷 어플리케이션 프로그램 등 저용량 데이터의 전송 시에는 소프트웨어 프로토콜 스택을 사용할 수 있다.
이에 따라, 대용량의 멀티미디어 데이터의 전송시 하드웨어 프로토콜 스택을 사용하여 처리속도가 저하되는 현상을 방지할 수 있으며, 그 밖의 저용량의 데이터 전송시에는 소프트웨어 프로토콜 스택을 사용하여 채널 수의 제한을 받지 않고 유연하게 통신을 할 수 있다.
도 2에 도시된 멀티미디어 서버(220), 디지털 TV(210) 및 모바일 장치(230)는 본 발명에 따른 멀티미디어 통신 장치가 적용된 일 예에 불과하며, DVD 재생기, 컴퓨터 등 다양하게 변형하여 응용할 수 있다.
이하에서는 본 발명에 따른 멀티미디어 통신 장치의 구조를 상세히 살펴보도록 한다.
도 3은 본 발명에 따른 멀티미디어 통신 장치를 계층별로 구분하여 표현한 블록도이다.
도 3을 참조하면, 본 발명에 따른 멀티미디어 통신 장치는 소프트웨어 프로토콜 스택(320) 및 하드웨어 프로토콜 스택(330)을 포함한다.
소프트웨어 프로토콜 스택(320)은, 전술한 TCP, UDP 등의 제4 계층 프로토콜 스택과 IP, IPv6 등의 제3 계층 프로토콜 스택으로 구성된다. 제1 계층의 PHY 스택(300)과 제2 계층의 MAC 스택(310)을 거쳐 소프트웨어 프로토콜 스택(320)으로 전달된 패킷은 파싱되며, 소프트웨어 소켓 응용 프로그램 인터페이스(Application Program Interface: 이하 API라 약칭한다)(340)를 통해 해당하는 어플리케이션 프로그램(360)에 전달된다.
하드웨어 프로토콜 스택(330)도, 전술한 TCP, UDP 등의 제4 계층 프로토콜 스택과 IP, IPv6 등의 제3 계층 프로토콜 스택으로 구성된다. 제1 계층의 PHY 스택(300)과 제2 계층의 MAC 스택(310)을 거쳐 하드웨어 프로토콜 스택(330)으로 전달된 패킷은 파싱되며, 하드웨어 소켓 API(350)를 통해 해당하는 어플리케이션 프로그램(370)에 전달된다.
이 때, 하드웨어 프로토콜 스택(330)에 연결된 어플리케이션 프로그램(370)은 주로 멀티미디어와 같은 대용량의 데이터의 통신을 처리하는 응용 프로그램일 것이고, 소프트웨어 프로토콜 스택(320)에 연결된 어플리케이션 프로그램(360)은 그 밖의 저용량 데이터를 처리하는 응용 프로그램이 될 것이다.
이하에서는, MAC/PHY 스택(310 및 300)을 통해 전달된 패킷이, 전술한 하드웨어 프로토콜 스택(330)과 소프트웨어 프로토콜 스택(320) 중 어느 스택을 통해 처리되어야 할지를 결정하는 구조를 설명한다.
도 4는 도 3에 도시된 멀티미디어 통신 장치의 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택의 연동관계를 설명하기 위한 도면이다.
도 4를 참조하면, MAC/PHY 스택(410 및 400)을 통해 전달된 패킷은, 먼저 하드웨어 프로토콜 스택(430)으로 전달된다. 하드웨어 프로토콜 스택(430)은, TCP, UDP 등의 제4 계층 프로토콜 스택(431)과 IP, IPv6 등의 제3 계층 프로토콜 스택(432) 외에 소켓 비교 선택부/중재부(preparse & arbiter)(433)와 소켓페어 레지스터(434)를 더 포함한다.
소켓 비교 선택부/중재부(433)는, MAC/PHY 스택(410 및 400)을 통해 전달된 패킷을 프리파싱(preparsing)하여 소켓페어(socket pair)를 추출한 후, 후술하는 소켓페어 레지스터(434)에 저장된 소정의 소켓페어와 비교한다. 비교결과 소정의 소켓페어와 일치하면 해당 패킷을 하드웨어 프로토콜 스택(431 및 432)으로 전달하고, 일치하지 않으면 해당 패킷을 소프트웨어 프로토콜 스택(421 및 422)으로 전달한다.
소켓페어 레지스터(434)는, 대용량/고속의 전송을 필요로 하는 멀티미디어 데이터에 대한 소켓페어를 미리 저장해 놓는다. 전달된 패킷으로부터 추출된 소켓페어는 레지스터에 저장되어 있는 소정의 소켓페어와 비교된다.
이에 따라, 대용량/고속의 전송을 필요로 하는 멀티미디어 데이터는 하드웨어 프로토콜 스택으로 전달되고, 그 밖의 데이터는 소프트웨어 프로토콜 스택으로 전달되어 처리된다.
도 5는 멀티미디어 통신 장치의 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택의 연동관계를 구현하기 위한 블록도이다.
도 5를 참조하면, MAC/PHY 스택(500)을 통해 패킷은 먼저, 소켓 비교 선택부(511)로 전달된다. 소켓 비교 선택부(511)는 전달받은 패킷을 파싱하여 소켓페어를 추출하고, 소켓페어 레지스터(512)에 저장된 미리 정의된 하드웨어 프로토콜 스택에 대한 소켓 페어와 비교한다. 비교결과 일치하면, 패킷은 하드웨어 프로토콜 스택(520)으로 전달되어 TCP/IP 프로토콜을 처리하게 된다. 만약, 비교결과 일치하지 않으면, 패킷은 MAC 인터페이스(513)를 통해 소프트웨어 프로토콜 스택(530)으로 전달되어 TCP/IP 프로토콜에 의해 처리된다.
한편, 중재부(514)는 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택의 충돌을 방지하기 위하여, 소프트웨어 프로토콜 스택(530)과 하드웨어 프로토콜 스택(520)으로부터 MAC/PHY 스택(500)을 통해 외부로 전송될 패킷들의 우선순위를 정하여 패킷을 내보낸다. 패킷의 우선순위는 선입선출(First In First Out: 이하 FIFO라 한다) 방식이나 라운드-로빈(Round-robin) 방식 등에 의해 정하여질 수 있다. 그밖에 다른 알고리즘에 의한 중재도 가능하다.
이에 따라, 소켓 비교 선택부(511)에 의해 하드웨어 프로토콜 스택(520)으로 보내진 패킷은 처리속도가 향상되어 멀티미디어 등의 대용량의 데이터의 전송 효율을 높일 수 있다.
도 6은 도 5에 도시된 소켓 비교 선택부(511)에 의해 비교되는 소켓 페어의 구조를 설명하기 위한 도면이다.
도 6을 참조하면, 좌측에는 패킷(600)의 구조가 표시되어 있고, 우측에는 패킷으로부터 추출된 소켓페어(610)가 도시되어 있다.
먼저 좌측의 패킷(600)의 구조를 살펴보면, IP 또는 IPv6 프로토콜에는 소스 IP 주소와 목적지 IP 주소가 포함되어 있으며, TCP 또는 UDP 프로토콜에는 각 패킷의 헤더 부분에 HTTP, SMTP, FTP, TELNET 등과 같은 어플리케이션 프로토콜을 구분할 수 있는 포트(port) 번호가 포함되어 있다. 이 포트 번호는 목적지 시스템에서 해당 패킷을 처리할 어플리케이션 소켓을 결정하는데 이용된다. 포트 번호는 특정 어플리케이션을 위해 정해진 1~255 사이의 값을 가질 수 있으며, 표준 유닉스 서비스는 256~1024 사이의 값을 가지고, 사용자 어플리케이션은 1025 이상의 값을 사용한다. 예를 들면, HTTP는 80, FTP 데이터는 20, FTP 제어는 21, TELNET은 23, SMTP는 25 등의 번호가 정해져 있으며, 사용자 어플리케이션은 1025 이상의 값 중에 임의의 값을 사용할 수 있다.
패킷이 전달되어 처리될 어플리케이션을 지정하기 위해 사용되는 소켓페어(610)는 패킷(600)의 소스 IP 주소(SRC IP ADDRESS) 및 목적지 IP 주소(DEST IP ADDRESS)와 소스 포트 번호(SRC PORT NUMBER) 및 목적지 포트 번호(DEST PORT NUMBER)를 추출하여 생성된다. 이 소켓페어(610)를 통해 패킷이 전달된 목적지 노드의 주소와 패킷이 사용될 어플리케이션 프로그램을 지정할 수 있다.
본 발명에 따른 멀티미디어 통신 장치는 전달된 패킷(600)으로부터 소켓페어(610)를 추출하여 소켓페어 레지스터(512)에 미리 지정된 하드웨어 프로토콜 스택(520)에 대한 소켓페어와 비교된다. 비교결과 일치하면, 해당 패킷(600)은 하드웨어 프로토콜 스택(520)으로 전달되어 처리된다. 일치하지 않는 경우에는 해당 패킷(600)은 소프트웨어 프로토콜 스택(530)으로 전달되어 처리된다.
도 7a 및 도 7b는 본 발명에 따른 멀티미디어 통신 장치를 구현한 일 예이다.
도 7a를 참조하면, 전술한 본 발명에 따른 멀티미디어 통신 장치가 각각의 기능을 하는 복수개의 칩으로 구성된 예를 도시한다. 즉, 이더넷 카드(EtherNet Card) 등과 같은 통신 카드에 각 기능을 수행하는 복수의 칩이 포함된 형태로 구현될 수 있을 것이다. CPU에서는 전술한 소프트웨어 프로토콜 스택의 기능을 담당하고, 하드웨어 TCP/IP에서는 전술한 하드웨어 프로토콜 스택의 기능을 담당하며, MAC+PHY 에서는 MAC/PHY 스택의 기능을 담당한다. 도 7a의 그림은 복수의 블록으로 구현한 일 예일 뿐, 다양한 형태로 변형하여 구현할 수도 있을 것이다.
도 7b를 참조하면, 전술한 본 발명에 따른 멀티미디어 통신 장치가 각각의 기능을 하나의 시스템-온 칩(System on a Chip: 이하 SoC 칩이라 약칭한다) 형태의 단일 칩으로 구현된 예를 도시한다. 즉, 전술한 CPU, 하드웨어 TCP/IP 및 MAC+PHY 기능이 하나의 칩에 구현된다.
이하에서는 전술한 멀티미디어 통신 장치의 구조를 기초로 하여 멀티미디어 통신 방법을 설명한다.
도 8은 본 발명에 따른 멀티미디어 통신 방법을 나타내는 플로우챠트이다.
도 8을 참조하면, 소프트웨어 프로토콜 스택 및 하드웨어 프로토콜 스택을 포함하는 멀티미디어 통신을 위하여, 먼저 MAC/PHY 스택으로부터 데이터 패킷을 전달받고(810 단계), 전달받은 패킷에서 소켓페어를 추출하여 하드웨어 소켓 채널인지 비교한다(820 단계). 비교 결과, 하드웨어 소켓 채널과 일치하면(830 단계), 하드웨어 프로토콜 스택으로 패킷을 전송하고(840 단계), 일치하지 않으면 소프트웨어 프로토콜 스택으로 패킷을 전송한다(850 단계). 각 스택으로 전달된 패킷은 처리되어 멀티미디어 데이터 또는 일반 인터넷 데이터를 전송하게 된다.
본 발명은 또한 컴퓨터로 읽을 수 있는 기록 매체에 컴퓨터가 읽을 수 있는 코드로서 구현될 수 있다. 컴퓨터가 읽을 수 있는 기록매체는 컴퓨터 시스템에 의하여 읽혀질 수 있는 데이터가 저장되는 모든 종류의 기록 장치를 포함한다. 컴퓨터가 읽을 수 있는 기록 매체의 예로는 ROM, RAM, CD-ROM, 자기 테이프, 플로피 디스크, 광 디스크 등이 있으며, 또한 캐리어 웨이브(예를 들어, 인터넷을 통한 전송)의 형태로 구현되는 것을 포함한다. 또한, 컴퓨터가 읽을 수 있는 기록 매체는 네트워크로 연결된 컴퓨터 시스템에 분산되어, 분산 방식으로 컴퓨터가 읽을 수 있는 코드로 저장되고 실행될 수 있다.
이상의 설명은 본 발명의 일 실시 예에 불과할 뿐, 본 발명이 속하는 기술분야에서 통상의 지식을 가진 자는 본 발명의 본질적 특성에서 벗어나지 않는 범위에서 변형된 형태로 구현할 수 있을 것이다. 따라서, 본 발명의 범위는 전술한 실시 예에 한정되지 않고 특허 청구범위에 기재된 내용과 동등한 범위 내에 있는 다양한 실시 형태가 포함되도록 해석되어야 할 것이다.
전술한 바와 같이 본 발명에 따르면, 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을 사용한 멀티미디어 통신 장치 및 그 통신 방법이 제공된다.
즉, CPU의 처리부담을 줄여 처리속도를 높이는 한편, 동시에 지원되는 채널 수에 제한을 받지 않고, 대용량의 멀티미디어 데이터를 고속으로 전송할 수 있다.
도 1은 소프트웨어 프로토콜 스택을 사용하는 경우의 TCP/IP 오버헤드를 나타낸 도면,
도 2는 본 발명의 바람직한 실시예에 따른 멀티미디어 통신 장치를 적용한 시스템의 일 예,
도 3은 본 발명에 따른 멀티미디어 통신 장치를 계층별로 구분하여 표현한 블록도,
도 4는 도 3에 도시된 멀티미디어 통신 장치의 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택의 연동관계를 설명하기 위한 도면,
도 5는 멀티미디어 통신 장치의 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택의 연동관계를 구현하기 위한 블록도,
도 6은 도 5에 도시된 소켓 비교 선택부(511)에 의해 비교되는 소켓 페어의 구조를 설명하기 위한 도면,
도 7a 및 도 7b는 본 발명에 따른 멀티미디어 통신 장치를 구현한 일 예,
도 8은 본 발명에 따른 멀티미디어 통신 방법을 나타내는 플로우챠트이다.

Claims (8)

  1. 하드웨어를 이용하여 인터넷 프로토콜을 처리하는 하드웨어 프로토콜 스택; 및
    소프트웨어를 이용하여 상기 인터넷 프로토콜을 처리하는 소프트웨어 프로토콜 스택을 포함하는 것을 특징으로 하는 멀티미디어 통신 장치.
  2. 제1항에 있어서,
    상기 멀티미디어 통신 장치는, 상기 소프트웨어 프로토콜 스택 및 상기 하드웨어 프로토콜 스택 중 하나를 선택하여 패킷을 전송하는 소켓 비교 선택부를 더 포함하는 것을 특징으로 하는 멀티미디어 통신 장치.
  3. 제2항에 있어서,
    상기 소켓 비교 선택부는, 상기 패킷으로부터 어플리케이션 소켓을 지정하는 포트 번호가 포함된 소켓페어를 추출하여 상기 하드웨어 프로토콜 스택에 대한 소정의 소켓페어와 비교하여, 일치하면 상기 하드웨어 프로토콜 스택으로 상기 패킷을 전송하고, 일치하지 않으면 상기 소프트웨어 프로토콜 스택으로 상기 패킷을 전송하는 것을 특징으로 하는 멀티미디어 통신 장치.
  4. 제3항에 있어서,
    상기 멀티미디어 통신 장치는, 상기 소정의 소켓페어를 저장하는 소켓페어 레지스터를 더 포함하며,
    상기 소켓페어 레지스터에는, 대용량 및/또는 고속의 데이터 전송을 필요로 하는 멀티미디어 데이터가 상기 하드웨어 프로토콜 스택으로 전송되도록, 상기 하드웨어 프로토콜 스택의 소켓페어가 저장되는 것을 특징으로 하는 멀티미디어 통신장치.
  5. 제1항에 있어서,
    상기 멀티미디어 통신 장치는, 상기 하드웨어 프로토콜 스택 및 상기 소프트웨어 프로토콜 스택 중 하나를 선택하여 외부로 패킷을 전송할 수 있는 중재부를 더 포함하는 것을 특징으로 하는 멀티미디어 통신 장치.
  6. 제1항의 상기 멀티미디어 통신 장치를 포함하는 것을 특징으로 하는 멀티미디어 장치.
  7. 제 6항에 있어서,
    상기 멀티미디어 장치는 디지털 TV, 모바일 장치, DVD 재생장치 및 멀티미디어 서버 중 어느 하나인 것을 특징으로 하는 멀티미디어 장치.
  8. (a) 전달받은 패킷으로부터 소켓 페어를 추출하여 하드웨어 프로토콜 스택에 대한 소켓페어인지를 비교하는 단계;
    (b) 비교결과 상기 하드웨어 프로토콜 스택에 대한 소켓페어와 일치하면, 상기 패킷을 하드웨어 프로토콜 스택으로 전달하는 단계; 및
    (c) 비교결과 상기 하드웨어 프로토콜 스택에 대한 소켓페어와 일치하지 않으면, 상기 패킷을 소프트웨어 프로토콜 스택으로 전달하는 단계를 포함하는 것을 특징으로 하는 멀티미디어 통신 방법.
KR1020030083621A 2003-11-24 2003-11-24 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법 KR20050049864A (ko)

Priority Applications (3)

Application Number Priority Date Filing Date Title
KR1020030083621A KR20050049864A (ko) 2003-11-24 2003-11-24 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법
US10/993,349 US20050111385A1 (en) 2003-11-24 2004-11-22 Multimedia communication device using software and hardware protocol stacks and communication method thereof
CNA2004101033865A CN1642142A (zh) 2003-11-24 2004-11-24 使用软件和硬件协议栈的多媒体通信设备及其通信方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
KR1020030083621A KR20050049864A (ko) 2003-11-24 2003-11-24 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법

Publications (1)

Publication Number Publication Date
KR20050049864A true KR20050049864A (ko) 2005-05-27

Family

ID=34588017

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020030083621A KR20050049864A (ko) 2003-11-24 2003-11-24 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법

Country Status (3)

Country Link
US (1) US20050111385A1 (ko)
KR (1) KR20050049864A (ko)
CN (1) CN1642142A (ko)

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100958660B1 (ko) * 2008-09-09 2010-05-20 한국전자통신연구원 Uwb 기반 이더넷 브릿지 장치 및 그 방법
KR101357342B1 (ko) * 2012-03-15 2014-02-04 엘에스산전 주식회사 하드웨어 프로토콜 스택

Families Citing this family (8)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP2031834A4 (en) * 2006-05-23 2010-01-20 Freebit Co Ltd COMMUNICATION MODULE AND APPLICATION PROGRAM HAVING THE MODULE
CN101222443B (zh) * 2008-01-30 2012-04-25 杭州华三通信技术有限公司 一种处理报文的方法和网络设备
CN101959159A (zh) * 2009-07-17 2011-01-26 浙江省公众信息产业有限公司 一种利用移动终端跨平台进行现场处置的系统和方法
WO2011033562A1 (ja) * 2009-09-16 2011-03-24 株式会社 東芝 通信装置
CN106341266B (zh) * 2016-09-12 2019-09-24 武汉理工大学 具有主动和被动传输模式的硬件tcp/ip协议栈装置
CN114095901A (zh) * 2020-08-24 2022-02-25 中车株洲电力机车研究所有限公司 通信数据处理方法及装置
EP4138336A4 (en) * 2020-08-24 2024-01-10 Crrc Zhuzhou Electric Locomotive Res Institute Co Ltd METHOD AND APPARATUS FOR PROCESSING COMMUNICATIONS DATA
CN115038138A (zh) * 2022-06-08 2022-09-09 大连市共进科技有限公司 数据转发方法、装置、计算机设备及存储介质

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP3491626B2 (ja) * 2001-05-29 2004-01-26 ソニー株式会社 送信装置、受信装置、及び送受信装置

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100958660B1 (ko) * 2008-09-09 2010-05-20 한국전자통신연구원 Uwb 기반 이더넷 브릿지 장치 및 그 방법
KR101357342B1 (ko) * 2012-03-15 2014-02-04 엘에스산전 주식회사 하드웨어 프로토콜 스택

Also Published As

Publication number Publication date
US20050111385A1 (en) 2005-05-26
CN1642142A (zh) 2005-07-20

Similar Documents

Publication Publication Date Title
US7145866B1 (en) Virtual network devices
US7630368B2 (en) Virtual network interface card loopback fastpath
US8649395B2 (en) Protocol stack using shared memory
US6728213B1 (en) Selective admission control in a network device
US10701190B2 (en) Efficient parsing of optional header fields
US20050129047A1 (en) Switch capable of controlling data packet transmission and related method
US8218539B2 (en) Flexible packet field processor
US9185033B2 (en) Communication path selection
US20050111455A1 (en) VLAN server
US20050163123A1 (en) Method and apparatus for implementing a MAC address pool for assignment to a virtual interface aggregate
CN105791214B (zh) 一种RapidIO报文和以太网报文之间的转换方法和设备
KR20040008124A (ko) 제어 정보 제공 방법 및 통신 스위치 및 이를 포함하는호스트 컴퓨터 시스템
US20080002736A1 (en) Virtual network interface cards with VLAN functionality
KR100798926B1 (ko) 패킷 스위치 시스템에서의 패킷 포워딩 장치 및 방법
US10009282B2 (en) Self-protecting computer network router with queue resource manager
US6925078B1 (en) Network adaptor driver with destination based ordering
US20190182366A1 (en) Efficient parsing of extended packet headers
CN107231269B (zh) 一种集群精确限速方法和装置
US20090232137A1 (en) System and Method for Enhancing TCP Large Send and Large Receive Offload Performance
US20110142050A1 (en) Hashing packet contents to determine a processor
US5802064A (en) Protocol header alignment
KR20050049864A (ko) 소프트웨어 프로토콜 스택과 하드웨어 프로토콜 스택을사용한 멀티미디어 통신 장치 및 그 통신 방법
WO2002051077A1 (en) A method and system for distinguishing higher layer protocols of the internet traffic
US9832072B1 (en) Self-configuring computer network router
KR20030085051A (ko) 우선 순위 또는 차별화된 서비스 정보에 입각한 태그 발생

Legal Events

Date Code Title Description
WITN Application deemed withdrawn, e.g. because no request for examination was filed or no examination fee was paid