KR20060093279A - 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터운반을 수행하는 방법 및 그러한 방법에 사용하기 위한장치 - Google Patents

인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터운반을 수행하는 방법 및 그러한 방법에 사용하기 위한장치 Download PDF

Info

Publication number
KR20060093279A
KR20060093279A KR1020060015106A KR20060015106A KR20060093279A KR 20060093279 A KR20060093279 A KR 20060093279A KR 1020060015106 A KR1020060015106 A KR 1020060015106A KR 20060015106 A KR20060015106 A KR 20060015106A KR 20060093279 A KR20060093279 A KR 20060093279A
Authority
KR
South Korea
Prior art keywords
real time
data
data packets
packet
critical data
Prior art date
Application number
KR1020060015106A
Other languages
English (en)
Other versions
KR101278632B1 (ko
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 톰슨 라이센싱
Publication of KR20060093279A publication Critical patent/KR20060093279A/ko
Application granted granted Critical
Publication of KR101278632B1 publication Critical patent/KR101278632B1/ko

Links

Classifications

    • 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
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/80Responding to QoS
    • AHUMAN NECESSITIES
    • A63SPORTS; GAMES; AMUSEMENTS
    • A63FCARD, BOARD, OR ROULETTE GAMES; INDOOR GAMES USING SMALL MOVING PLAYING BODIES; VIDEO GAMES; GAMES NOT OTHERWISE PROVIDED FOR
    • A63F9/00Games not otherwise provided for
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/1066Session management
    • H04L65/1101Session protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L65/00Network arrangements, protocols or services for supporting real-time applications in data packet communication
    • H04L65/60Network streaming of media packets
    • H04L65/65Network streaming protocols, e.g. real-time transport protocol [RTP] or real-time control protocol [RTCP]
    • 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]

Landscapes

  • Engineering & Computer Science (AREA)
  • Multimedia (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • General Business, Economics & Management (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Communication Control (AREA)

Abstract

인터넷 프로토콜 IP를 사용하여 직렬 버스(20)를 통한 실시간 스트리밍이 점점 더 중요해지고 있다. 10G비트의 이더넷과 같은 새로운 버스 기술로, HD 영화 촬영술 품질과 압축되지 않은 형태에서의 스트리밍도 가능하게 되었다. 하지만 이러한 경우, 소프트웨어 수단에 의한 데이터 액세스 관리는 심지어 높은 성능을 가진 마이크로컨트롤러가 소프트웨어가 실행되는 곳에 사용되는 경우에도 성능상의 이유로, 중요하거나 단순히 가능하지 않게 된다.
본 발명은 실시간 임계(critical) 데이터 패킷을 처리하기 위한 하드웨어 수단(26, 27, 28), 실시간 비임계(non-critical) 데이터 패킷을 처리하기 위한 소프트웨어 수단을 구현하기 위한 네트워크에서의 장치, 및 각각 패킷 헤더를 분석하고 실시간 임계 데이터 패킷을 하드웨어 수단(26, 27, 28)으로 옮기며 실시간 비임계 데이터 패킷을 소프트웨어 수단으로 옮기기 위한 디멀티플렉서(25)에 관한 필터 알고리즘을 제안한다.

Description

인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터 운반을 수행하는 방법 및 그러한 방법에 사용하기 위한 장치{METHOD FOR PERFORMING DATA TRANSPORT OVER A SERIAL BUS USING INTERNET PROTOCOL AND APPARATUS FOR USE IN THE METHOD}
본 발명은 인터넷 프로토콜 IP를 사용하여 직렬 버스를 통해 데이터 통신을 수행하는 분야에 관한 것이다. 좀더 구체적으로는, 본 발명은 인터넷 프로토콜을 사용하여 직렬 버스를 통해 실시간 스트리밍을 수행하는 분야에 관한 것이다.
인터넷을 통한 비디오 스트리밍에 있어, 다수의 높은 압축 비디오 인코딩 기술이 존재한다. 그러한 기술은 MPEG2 또는 MPEG4 비디오/오디오 코딩을 포함한다. 다른 기술은 H.263, H.264, DIVX 또는 윈도우 미디어 9 등이다. 이들 기술은 640*480 픽셀을 가진 표준 비디오 품질 스트림을 100 이상의 인자만큼 25㎐=184M비트/초로 3색 성분의 8비트로 압축하는 것을 허용하여, DSL(Digital Subscriber Line) 모뎀을 가지고 아날로그 전화선을 통한 비디오 스트리밍이 가능하게 한다.
비디오 체인의 다른 부분(end), 즉 비디오 제작 부분에서는, 오로지 리던던시 감축이 사용될지라도 대부분의 압축 기술이 적용될 수 없다. 그러므로, 버스 프로토콜을 거쳐 데이터 통신을 하기 위해서는 훨씬 더 높은 데이터 속도가 지원되어야 한다.
약 1.5G비트/초로 처리하는 HDSDI(SMPTE 292M)라고 불리는 전문 비디오 제작 분야에 관해 존재하는 하나의 버스 표준이 있다. 또한 장래에는 점점 더 높은 선명도를 가진 비디오 자료가 만들어질 것이고 이렇게 되면 더 높은 데이터 속도가 요구되는데, 예를 들어 2k의 영화 촬영 필름의 경우, 10비트의 1920*1080 픽셀을 3색 성분으로 초당 24프레임으로 하고 오디오 및 메타 데이터를 더하게 되면 1.6G비트/초까지 이르게 된다. 이러한 속도를 넘어서서, 3840*2160의 해상도를 가진 4k 필름의 경우가 진행 중이다. 이제 관련 업계는 6G비트/초를 다루어야 한다.
그러므로 스튜디오에서는, 비디오 서버의 네트워크를 구축하고, 2G비트/초를 넘는 데이터 운반 능력을 제공하는 버스 기술에 기초하여 비디오 서버와 싱크의 네트워크를 구축하는 것이 매우 바람직하다. 이더넷 버스 기술은 이들 높은 데이터 속도에 관해 특정된다. 1000BASE-SX, 1000BASE-LX, 1000BASE-CX 및 1000BASE-T와 같은 1G비트/초의 데이터 속도를 제공하는 이더넷 변형이 존재한다. 또한 광섬유에 기초한 10G비트/초의 데이터 속도를 제공하는 특정된 이더넷 변형이 존재한다. 이들은 10GBASE-LX4, 10GBASE-SR, -LR, -ER, 10GBASE-SW, -LW 및 -EW로 이름이 정해진다.
이더넷 물리 레이어를 통한 비디오 스트리밍이 전문 비디오 제작에 사용될 가능성이 점점 더 높아지고 있다. 또한 이러한 비디오 스트리밍을 위해, TCP(Transmission Control Protocol)/UDP(User Datagram Protocol)/RTP(Real Time Transport Protocol)과 IP(Internet Protocol) 같은 이미 설치된 상부 레이어를 사용하는 것이 매우 강력히 요청되는데, 이것은 이들 프로토콜 레이어를 구비한 스택/구동기에 많은 다른 운영 시스템(OS)이 설치되기 때문이다. 장점은 많은 선반 재고 소프트웨어 툴(tool)이 이들 비디오 스트림을 검색/표시 또는 저장/기록하기 위해 TCP/UDP와 IP 프로토콜을 지원한다는 점이다.
IP를 통한 비디오 스트리밍에 관해 알려진 대부분의 응용은 소프트웨어에 기반을 두고 있다. 일종의 실시간 스트리밍을 달성하기 위해서는, 응용을 실행하는 프로세서의 성능이 매우 우수해야 한다. IP-패킷을 처리하는 것이 이더넷 물리 속도 레벨{1000BASET, 10G비트이더넷(10GbE)}이 증가함에 따라 점점 더 힘들어지므로 프로세서는 반응 시간을 중단시킨다. IP-패킷을 10GbE로 처리하는 데 있어, 현재의 프로세서로는 필요한 성능을 제공할 수 없다. 다음 상부 프로토콜 층, 특히 TCP를 고려한다면, 프로세서는 충분한 성능을 가지지 않는다.
전술한 문제를 해결하기 위한 본 발명의 일반적인 생각은, 내장된 소프트웨어/하드웨어 구조에 관한 TCP/U에RTP와 IP 프로토콜 레벨을 분할하고 TCP가 아닌 UDP/RTP를 통해 실시간 스트리밍을 행하는, 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터 운반을 수행하는 방법을 제공하는 것이다. 이러한 제안에서 시간 임계 RTP/UDP/IP 프로토콜은 하드웨어에 의해 완전히 지원되고 비-시간(not-time) 임계 TCP/(UDP)/IP 레벨은 내장된 마이크로프로세서 상에서 소프트웨어로 구현된다. 마찬가지로, 본 발명은 실시간 스트리밍이 RTP 대신 파일 시스템의 절차 호출로 행해질 경우 프로토콜 레벨을 분할한다는 개념에 관한 것이다.
본 발명에 따른 방법에서 사용하기 위한 장치에 있어서, 이러한 장치가 실시간 임계 데이터 패킷을 처리하기 위한 하드웨어 수단, 실시간 비임계 데이터 패킷을 처리하기 위한 소프트웨어 수단, 및 실시간 임계 데이터 패킷을 하드웨어 수단으로 통과시키고 실시간 비임계 데이터 패킷을 소프트웨어 수단으로 통과시키기 위한 디멀티플렉서와 관련되는 필터 수단을 포함한다면 유리하다.
추가적인 유리한 실시예는 각각의 종속항으로부터 분명해진다.
인터넷 기술이 사용되면, 필터 알고리즘이 다음 3가지 결정을 하는 것이 특히 유리하다.
1. IP 데이터 패킷이 실시간 임계로 처리되는 것.
2. IP 데이터 패킷이 실시간 비임계로 처리되는 것.
3. IP 데이터 패킷이 처리되지 않도록 각각 블록킹되는 것.
필터링 수단에 관한 결정 기준은 TCP/UDP/IP 패킷 헤더의 분석으로부터 생긴다. 결정은 다음 사항에 따라 이루어질 수 있다.
1. 인입 IP 데이터 패킷의 IP 소스 어드레스.
2. 인입 IP 데이터 패킷의 IP 데스티네이션(destination) 어드레스.
3. 인입 IP 데이터 패킷의 '프로토콜'-필드에서의 엔트리.
4. 인입 TCP/UDP/IP 데이터 패킷의 소스 포트 번호.
5. 인입 TCP/UDP 데이터 패킷의 데스티네이션 포트 번호.
6. 인입 TCP/IP 데이터 패킷의 원격 절차 호출 기능(프로그램 번호와 절차 번호).
이러한 식으로 데이터 패킷을 필터 결정에 의존하는 올바른 처리 단으로 통과시키는 디멀티플렉서가 사용될 수 있다.
일반적으로 필터 결정 1.)과 2.)는 미리 알려지지 않은 인입 데이터 패킷의 처리를 블록킹하거나, 소프트웨어에 의해 실시간 비임계로 필터 결정을 간단한 방식, 예를 들어 '사용중(busy)' 승인과 같이 승인하는데 사용된다. 이는 데이터 패킷 헤더에서의 고유한(unique) IP 소스 어드레스와 IP 데스티네이션 어드레스에 따라 행해진다.
본 발명의 일 실시예는 스트리밍을 위해 네트워크 레이어를 사용하는 것이다. 본 명세서에서 RTP(실시간 트랜스포트 프로토콜)와 RTSP(실시간 스트리밍 프로토콜)가 UDP/IP와 함께 사용된다. 본 명세서에서 스트림은 실시간 비임계 방식으로 RTSP로 제어되고, 데이터 패킷은 실시간 임계 방식으로 RTP로 스트리밍된다. UDP/IP 레이어와 RTP 레이어는 각각 하드웨어 가속화되어야 하고, RTSP는 소프트웨어 처리에 의해 지지될 수 있다. 이를 위해 추가로 필터 결정 3.) 4.) 및 5.)가 그러한 결정들의 '프로토콜'-필드에서의 고유한 엔트리, TCP/UDP 패킷의 소스 포트 번호, TCP/UDP 패킷의 데스티네이션 포트 번호에 의해 실시간 거동에 대해 하드웨어적으로 처리될 데이터 패킷을 결정하는데 사용된다.
모든 다른 데이터 패킷은 실시간 비임계적이고, 소프트웨어에 의해 처리될 수 있다.
파일 시스템이 네트워크에서의 데이터 액세스를 제어하는데 사용되는 본 발명의 실시예에서, 파일 시스템은 다른 과제를 실행하기 위해 구현된 다수의 절차를 가진다. 이러한 경우, 네트워크 스테이션은 절차 호출을 하드웨어 수단이나 소프트웨어 수단에 각각 통과시키기 위한 실시간 비임계 절차로부터 실시간 임계 절차 호출을 분리하기 위한 절차 필터를 포함하는 것이 유리하다.
이를 위해 추가적으로 필터 결정 6.)이 실시간 임계 데이터 패킷을 실시간 임계 데이터 패킷의 '판독'과 '기입' 절차에 따라 결정하고 하드웨어에 의해 처리하는데 사용된다. 예를 들어 'create_file' 절차에 따라 모든 다른 데이터 패킷이 소프트웨어에 의해 실시간 비임계 방식으로 처리될 수 있다.
소프트웨어에 의존하는 현재 알려진 해결책에 비해, 이러한 실시예는 실시간 임계 절차를 실시간 비임계 절차와 구별함으로써, 예를 들어 저장 디바이스로의 액세스를 위해 필요한 데이터 처리량(throughput) 속도(rate)를 보장한다.
본 발명에 따른, 예를 들어 네트워크를 통한 저장 디바이스로 또는 저장 디바이스로부터의 시간 임계 데이터 스트림은, 하드웨어 구현된 데이터 경로에 의해 가속화된 2G비트/초 또는 그 이상의 처리량 속도로 작용할 수 있다.
본 발명은 기존의 네트워크 파일 시스템(NFS)이 구현되는 경우에 특히 유용하다.
본 발명의 예시적인 실시예를 도면을 참조하여 좀더 상세히 설명한다.
도 1에서, 참조 번호(10)는 전문 비디오 카메라를 나타낸다. 이 카메라는 이더넷 버스 연결(13)을 거쳐 저장 디바이스(12)와 연결된다. 압축되지 않은 비디오 스트리밍은 버스 연결을 거쳐 수행되므로, 이더넷 변형인 1000BASE-xy 또는 10GBASE-xy 중 하나가 사용된다. 이러한 이더넷 변형은 광섬유나 구리 케이블에 기초한 버스 기술을 포함한다. 저장 디바이스는 초당 2G비트 이상으로 오디오/비디오 데이터를 기록할 수 있다.
도 2는 데이터 통신의 잘 알려진 OSI/ISO 참조 모델을 도시한다. 다른 층들에 관해 이 예에서는 어떤 구체적인 기술이 사용되었는지가 표시된다. 물리 층(PHL)은 이더넷 물리 층이다. 데이터 링크 층은 이더넷 MAC 층이다. 인터넷 프로토콜 IP는 네트워크 층(NL)을 구현하기 위해 사용된다. 트랜스포트 층의 레벨 상에서, UDP/TCP 프로토콜이 구현된다. 이 예에서는 더 높은 층인 세션 층(SL)과 프리젠테이션 층(PRL)은 명시되지 않는다. 응용 층(AL)은 RTP, RTSP, 및 네트워크 파일 시스템(NFS)에 관한 원격 절차 호출(RPC)에 의해 표현된다.
도 3a는 비디오 스트림의 일부분을 운반하는 이더넷 패킷의 형식을 도시한다. 비디오 데이터를 포함하는 순수한 패이로드 데이터가 도 3a의 상부에 도시되어 있다. 두 번째로 가장 높은 레벨은 가장 높은 레벨에 RTP 헤더를 더한 패이로드 데이터를 도시한다. 세 번째 레벨은 패이로드 데이터와, RTP 헤더에다 RTP 헤더의 앞에 있는 UDP 헤더를 더한 것을 도시한다. 네 번째 레벨은 UDP 헤더의 앞에 있는 IP 헤더를 구비한 세 번째 레벨의 패킷이 연장하는 것을 도시한다. 도 3a의 맨 아래에는 이더넷 헤더가 맨 앞에 있고 IP-, UDP-, RTP-헤더가 이어지며, 이더넷 패킷의 데이터 필드에는 패이로드 데이터가 있는 완전한 이더넷 패킷이 도시되고 있다.
도 3b는 RTP 레이어가 NFS에 관한 RPC 호출과 교환되는 실시예에 관한 이더넷 패킷의 대응하는 형식을 도시한다.
도 4는 본 발명에 따른 디바이스에 관한 소프트웨어 및 하드웨어 구조상 블록도를 도시한다. 모든 실시간 임계 및 비임계 이더넷 데이터 패킷은, 예를 들어 10G비트의 이더넷 매체(20) 상에서 디바이스에 도착한다. 참조 번호(21)는 이더넷 물리 레이어를 표시한다. 하드웨어로 구현된 이러한 이더넷 물리 레이어 다음에, 패킷은 이더넷 MAC 하드웨어 레이어로 들어간다. 이 경우 이러한 디바이스에 관한 MAC 식별 번호 필터링이 행해진다. 이더넷 MAC 하드웨어 레이어(22) 위에는 시간 관점에서 이더넷 버스(20)로부터 디바이스를 분리시키기 위해 다수의 FIFO 메모리(23)가 위치한다. 수신(RX-DMA) 및 송신(TX-DMA) 기계(24, 33)가 상부 프로토콜 레이어 쪽으로 FIFO 메모리(23)를 각각 채우는 것을 판독한다.
유닛(25)은 수신 경로인 경우에는 IP-헤더-, 및 상부 레이어 헤더 필터 및 데이터 패킷 디멀티플렉서이고, 송신 경로인 경우에는 데이터 패킷 멀티플렉서이다.
이 경우, 특정 포트 상에서 미리 결정된 특정 소스/데스티네이션 IP 어드레스 ID가 xy인 실시간 임계 데이터 패킷과 특정 원격 절차 호출로 파일 시스템 네트워킹에 관해 필터링이 이루어진다. 필터링을 위해 필요한 모든 정보는 패킷 헤더에서 발견될 수 있다. 그러므로 이러한 유닛은 패킷에서의 다른 헤더들을 평가하기 위해 필요하다. 도 3에 도시된 바와 같이, IP ID가 IP 헤더에 존재하고, UDP 포트는 도 3에 도시된 바와 같이, UDP 헤더에서 발견된다. 식별된 실시간 임계 UDP 패킷은 하드웨어에 기초한 IP 디코딩 유닛(26)으로 분배된다. 다음 처리 단은 하드웨어에 기초한 UDP 처리 유닛(27)이다. UDP 레이어 위에는 응용 레이어(30)가 위치하고, 이러한 레이어의 일부는 전용 하드웨어 수단으로 구현된다. 이는 RTP 프로토콜에 관한 하드웨어이다. 이러한 경우, 실시간 스트리밍은 NFS 원격 절차 호출로 이루어지는 경우에 대해, 하드웨어(28)는 RPC 형식을 지지한다. 이러한 경우, 필터 유닛(25)은 UDP 패킷에서의 프로그램 번호와 절차 번호에 민감하다.
유닛(25)은 그에 따른 소스/데스티네이션 IP ID(도 5에서는 xy임)를 가지고 TCP 또는 UDP에 관한 시간 비임계 패킷을 필터링한다. 패킷은 내장된 프로세서(31)에 의해 처리되기 위해 RAM(32)에 일시적으로 저장된다. 이 경우 소프트웨어는 TCP/(UDP)/IP 프로토콜 레이어를 구현한다. 처리 시간은 전술한 실시간 임계 패킷의 데이터 경로 상에서 보다 훨씬 더 느리다. 패킷을 처리한 후, 필요하다면 시간 임계 패킷 스트림으로 응용 패킷 멀티플렉서(미도시)에서 멀티플렉싱되고, 응용 레이어(30)에 제공될 수 있다. 타깃 응용은 최종적으로 실시간 비임계 패킷뿐만 아니라 빠르게 도착하는 실시간 임계 패킷의 합쳐진 스트림을 실행한다.
다음에 다른 방향, 즉 도 5에 도시된 디바이스로부터 데이터를 전송하는 방향으로의 처리 경로가 설명된다. 연결된 디바이스, 예를 들어 재생(playback) 디바이스(미도시)가 종속 디바이스의 전용 소스 IP ID를 구비한 UDP를 거쳐 실시간 임계 데이터를 요구하게 되면, 내장된 프로세서(31)가 응용(30)에 원하는 데이터에 관한 요구를 송신한다. 이러한 데이터는 응용(30)으로부터 미도시된 응용 패킷 디멀티플렉서에 제공된다. 이러한 유닛은 데이터를 바로 하드웨어 RTP/RPC, UDP 및 IP 유닛(28, 27, 26)에 넘긴다. 이들 유닛은 데이터를 RTP/RPC, UDP 및 IP 패킷 표준에 따라 포맷한다. 이후 이러한 패킷들은 패킷 멀티플렉서(25)에 제공되고, 데이터 패킷의 멀티플렉싱된 스트림은 이후 하드웨어 TX-DMA 유닛(33)에 전달된다. 다음 처리 유닛은 FIFO 메모리(23), 이더넷 하드웨어 MAC 레이어(22), 이더넷 물리 레이어(21) 및 최종적으로 이더넷 케이블(20)이다.
다음에는 동일한 방향을 가지나 실시간 비임계 패킷에 관한 처리 경로가 설명된다. 연결된 디바이스(예를 들어, 윈도우/리눅스 PC)가 종속 디바이스로부터 각각 예를 들어 FTP와 TCP를 거쳐 데이터 패킷을 요구하게 되면, FTP/TCP 패킷 요구는 전술한 바와 같이 내장된 프로세서(31)에 의해 수신된다. 내장된 프로세서는 FTP 명령을 해석하고 원하는 데이터에 관한 응용(30)을 요구한다. 응용(30)으로부터 응용 패킷 디멀티플렉서로 데이터가 제공된다. 이러한 유닛은 데이터를 RAM(32)에 기입한다. 내장된 프로세서(31)는 데이터로부터 TCP/IP 패킷을 구축하고 헤더 필터와 데이터 패킷 멀티플렉서 유닛(25)에 TX-DMA 유닛(33)으로의 데이터 패킷의 송신을 요구한다. 다음 처리 유닛은 FIFO 메모리(23), 이더넷 MAC 레이어 하드웨어 유닛(22), 이더넷 물리 레이어(21) 및 최종적으로 이더넷 케이블(20)이다.
도 5는 본 발명의 일 실시예의 좀더 상세한 블록도를 도시한다. 도 4에서와 같은 동일한 구성 성분에 관해서는 동일한 참조 번호가 사용된다. 이들 구성 성분은 다시 설명되지 않는다.
수신 및 전송 경로는 개별적으로 설명된다. 수신 경로에 있어 빠르게 도착하는 데이터 패킷은 시간 분리 목적을 위해 FIFO 메모리 유닛(23)의 FIFO 메모리(40)에 모아진다. 다른 하드웨어 모듈의 구성 블록(42)이 존재하고 FIFO 메모리 블록에서도 역시 그러하다. RX 데이터 패킷은 전술한 필터 알고리즘에 따라 필터 블록(25)의 헤더 파서(parser) 블록(43)에서 처리된다. 실시간 프로토콜 스택을 위해, 실시간 임계 패킷이 바로 하드웨어 블록(62)에서의 TX 엔진(63)에 제공된다. 실시간 비임계 패킷은 시스템 타이밍을 DRAM 타이밍으로부터 분리시키는 FIFO(44)로 기입된다. FIFO(44)로부터의 패킷은 4개의 채널 DRAM 컨트롤러(48)를 통해 DRAM(32)에 제공된다. 이 경우, 이들 데이터 패킷은 마이크로컨트롤러(31)로 처리될 수 있고, 이는 프로세서 코어인 PPC405에 기초할 수 있다. 이러한 프로세서는 그것의 인터페이스 포트(55)를 거쳐 4개의 채널 DRAM 컨트롤러(48)와 연결된다. TX 엔진(63)은 실시간 임계 데이터 패킷을 하드웨어 처리 모듈 MAC 클라이언트(65), IP(26) 및 실시간 프로토콜 스택(62)용 UDP(27)에 제공한다. 이들 모듈 내에서 패킷 평가는 각 표준에 따라 행해진다. 응용 인터페이스(66)는 실시간 임계 데이터 패킷을 응용 모듈(29)에 제공하고, 이 경우 RTP 또는 RPC 처리는 특정 실시간 하드웨어 모듈(28)에서 행해진다. 수신된 이더넷 데이터 패킷에 의해 생긴 모든 실시간 비임계 토픽은 DRAM(32)에서의 실시간 비임계 이더넷 패킷을 처리하는 역할을 하는 마이크로컨트롤러(31)와, 응용 인터페이스(61)를 통한 응용 처리의 역할을 하는 마이크로프로세서 코어(67) 사이에서 처리된다.
전송 목적으로, 응용(29)의 마이크로프로세서 코어(67)는 전송 목적을 위해 필요한 모든 모듈을 구성하는 마이크로컨트롤러(31)에 송신 요구를 낸다. 이후 응용(29)은 RTP/RPC 모듈(28)과, 응용 인터페이스(61)를 통해 실시간 임계 데이터 패킷을 UDP(27), IP(26), 및 MAC-클라이언트(65) 하드웨어 모듈에 제공하여 각각 실시간으로 각 표준에 따른 데이터 패킷을 'on-the-fly'로 포맷한다. RX-엔진(64)이 이들 데이터 패킷을 FIFO(45)를 거쳐 정규(scheduled) 데이터 경로 멀티플렉서(46)에 제공한다. 이러한 경로 멀티플렉서(46)에서 실시간 임계 데이터 패킷은 DRAM(32)에서 마이크로컨트롤러(31)에 의해 제공된 실시간 비임계 데이터 패킷과 혼합되고, 이러한 DRAM(32)에서는 이들 패킷이 DRAM 제어기(48)에 의해 페치되고 FIFO(47)에 제공된다. 이후 모든 데이터 패킷은 시간 분리 목적으로 TX-FIFO(41)로 쓰여지고, 이더넷 MAC(22)과 이더넷 물리 레이어 모듈(21)을 거쳐 광학/구리 매체(20)에 보내진다.
전술한 RPC 토픽에 관해, 본 발명의 추가 실시예가 도 6을 참조하여 설명된다.
도 4에 도시된 것과 같은 데이터 처리 아키텍처는 오디오/비디오(AV) 시스템과 같은 실시간 데이터 처리를 위한 아키텍처이다. 이들 도메인에서의 모든 응용에 있어서, 저장 디바이스로 빠른 액세스가 중요한 문제거리이다. PC 도메인에서의 응용이 빠른 데이터 액세스를 가지는 것에 관심이 있는데 반해, 또한 저장 디바이스에 관한 데이터 보안(데이터 리던던시)에 높은 우선순위를 가진다. 따라서 PC 도메인에서의 데이터 액세스의 제어는 현재로서는 아직 실시간으로 가능하지 않고, 소프트웨어로 실현된다.
2G비트/초의 지속적인 데이터 처리량 속도(throughput rate)를 요구하는 AV 실시간 도메인에서의 새로운 응용에 있어, 소프트웨어에 의해 이러한 높은 데이터 처리량을 지원하는 것{인텔리전트 파일 시스템(FS) 제어로}이 더 이상 가능하지 않다.
네트워크에서 파일로의 데이터 액세스를 관리하기 위해서, NFS(네트워크 파일 시스템)라고 하는 파일 시스템이 존재한다. NFS는 RPC-, UDP, 및 IP-레이어 스택의 상부에 있는 네트워크에서 사용하기 위한 UNIX-기반의 의사(pseudo) 파일 시스템이고, 여기서 NFS는 원격 절차 호출(RPC)의 한 세트이다. 본 발명의 이러한 실시예에서, NFS 레이어의 절차를 소프트웨어-지원 작업(task)와 하드웨어 구현 과제로 분할하는 메커니즘을 도입하는 것이 커널(kernel)이다.
소프트웨어 부분은 NFS 절차(READ와 WRITE)를 제외하고 GETATTR, CREATE 또는 REMOVE와 같은 '비-실시간' 거동(표 1 참조)으로 NFS 제어 절차를 관리한다.
RPC 필터링의 경우에 도 5에서의 필터 유닛(25)의 구조를 도시한다. 이를 위해, 필터 유닛(25)은 2개의 테이블을 포함하고, 그 중 하나는 소프트웨어 경로를 위한 것이며, 다른 하나는 하드웨어 경로를 위한 것이다. 이들 테이블은 통과될 절차 이름을 포함한다. NFS 버전 번호는 테이블에 색인을 붙인다. 오직 2개의 절차( READ와 WRITE)(실시간 임계 데이터 스트림 기반의 절차)만이 NFS 레이어의 하드웨어 부분에서 통과된다. 다른 것들은 NFS 레이어의 소프트웨어 경로로 보내진다.
오직 소프트웨어에만 의존하는 현재 알려진 해결책에 비해, 제안된 본 발명은, 예를 들어 실시간 비임계 절차와 실시간 임계 NFS 절차를 구별함으로써 저장 디바이스로의 액세스를 위해 필요한 (높은) 데이터 처리량 속도를 보장한다.
예를 들어, 본 발명에 따라 네트워크를 통한 NFS 저장 디바이스로의 시간 임계 데이터 스트림 또는 NFS 저장 디바이스로부터의 시간 임계 데이터 스트림은 하드웨어 구현 데이터 경로에 의해, 2G비트/초 또는 가속화된 그 이상의 처리량 속도로 동작 가능하다.
전술한 실시예의 다양한 수정이 가능하고 아래 열거된 청구항의 범위 아래에 있게 된다.
전술한 바와 같이, 본 발명은 인터넷 프로토콜 IP를 사용하여 직렬 버스를 통해 실시간 스트리밍을 수행하는 데 있어, 즉 2G비트/초 또는 그 이상의 처리량 속도로 동작하는 것을 가능하게 한다는 효과를 가진다.
도 1은 실시간 저장 디바이스에 연결된 비디오 카메라를 도시하는 도면.
도 2는 데이터 통신의 OSI/ISO 참조 모델의 다른 레이어를 도시하는 도면.
도 3a는 IP-, UDP- 및 RTP-헤더를 포함하는 이더넷 데이터 패킷의 패킷 포맷을 도시하는 도면.
도 3b는 IP-, UDP- 및 RPC-헤더를 포함하는 이더넷 데이터 패킷의 패킷 포맷을 도시하는 도면.
도 4는 본 발명에 따른 디바이스의 소프트웨어/하드웨어 블록도.
도 5는 본 발명에 따른 10G 이더넷에 관한 실시간 고속 스트리밍 인터페이스용 하드웨어/소프트웨어 구현을 도시하는 도면.
도 6은 RPC 프로토콜에 따른 절차 필터의 구조를 도시하는 도면.
<도면의 주요부분에 대한 부호의 설명>
10: 전문 비디오 카메라 12: 저장 디바이스
13: 이더넷 버스 연결 20: 이더넷 매체
21: 이더넷 물리 레이어 22: 이더넷 MAC 하드웨어 레이어
23, 40: FIFO 메모리 25: 필터 블록
26: IP 디코딩 유닛 27: UDP 처리 유닛
28: 하드웨어 수단 30: 응용(application)
31: 프로세서 32: RAM
42: 구성 블록 43: 헤더 파서 블록
44: FIFO 48: DRAM 컨트롤러

Claims (7)

  1. 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터 운반을 수행하는 방법으로서, 상기 데이터 운반은 실시간 임계 데이터 패킷뿐만 아니라 실시간 비임계 데이터 패킷을 포함하고, 상기 실시간 임계 데이터 패킷은 사용자 데이터그램 프로토콜(UDP)과, 실시간 운반 프로토콜(RTP) 또는 파일 시스템으로부터의 절차 호출 중 하나에 기초하여 전송되며, 상기 실시간 비임계 데이터 패킷은 송신 제어 프로토콜(TCP) 및/또는 사용자 데이터그램 프로토콜(UDP)에 기초하여 전송되는 것을 특징으로 하는, 데이터 운반 수행 방법.
  2. 직렬 버스(20)용 인터페이스를 포함하는, 제 1항에 따른 데이터 운반 수행 방법에서 사용하기 위한 장치로서, 상기 장치는 실시간 임계 데이터 패킷을 처리하기 위한 하드웨어 수단(26, 27, 28), 실시간 비임계 데이터 패킷을 처리하기 위한 소프트웨어 수단 및 상기 실시간 임계 데이터 패킷을 상기 하드웨어 수단(26, 27, 28)에 넘기고 상기 실시간 비임계 데이터 패킷을 상기 소프트웨어 수단에 넘기기 위한 필터 유닛(25)을 포함하는 것을 특징으로 하는, 장치.
  3. 제 2항에 있어서, 상기 필터 유닛(25)은 상기 소스 또는 데스티네이션(destination) 디바이스의 IP 주소, 상기 IP 패킷 타입 및 데이터 패킷의 포트 번호에 기초하여 상기 데이터 패킷을 필터링하기 위한 수단을 포함하는, 장치.
  4. 제 3항에 있어서, 상기 필터링 수단은 데이터 패킷이 사용자 데이터그램 프로토콜(UDP)과 상기 파일 시스템으로부터의 절차 호출에 기초하여 전송되는 경우에 절차 호출의 타입에 기초하여 추가로 상기 필터링을 수행하는 절차 필터를 포함하는, 장치.
  5. 제 4항에 있어서, 상기 절차 필터(42)는 하드웨어 수단(43)으로 넘겨질(passed) 절차 호출의 테이블과, 소프트웨어 수단(41)으로 넘겨질 절차 호출의 테이블을 포함하는, 장치.
  6. 제 4항에 있어서, 상기 파일 시스템은 네트워크 파일 시스템(NFS)이고, 상기 절차 호출은 원격 절차 호출인, 장치.
  7. 제 5항 또는 제 6항에 있어서, 상기 하드웨어 수단(26, 27, 28)으로 넘겨질 원격 절차 호출만이 절차 호출(NFS_READ, NFS_WRITE)인, 장치.
KR1020060015106A 2005-02-18 2006-02-16 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터운반을 수행하는 방법 및 그러한 방법에 사용하기 위한장치 KR101278632B1 (ko)

Applications Claiming Priority (2)

Application Number Priority Date Filing Date Title
EP05090033.1 2005-02-18
EP05090033A EP1694023A1 (en) 2005-02-18 2005-02-18 Method for performing data transport over a serial bus using internet protocol and apparatus for use in the method

Publications (2)

Publication Number Publication Date
KR20060093279A true KR20060093279A (ko) 2006-08-24
KR101278632B1 KR101278632B1 (ko) 2013-07-30

Family

ID=34938404

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020060015106A KR101278632B1 (ko) 2005-02-18 2006-02-16 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터운반을 수행하는 방법 및 그러한 방법에 사용하기 위한장치

Country Status (7)

Country Link
US (1) US20060187925A1 (ko)
EP (1) EP1694023A1 (ko)
JP (1) JP4822866B2 (ko)
KR (1) KR101278632B1 (ko)
CN (1) CN1822592A (ko)
BR (1) BRPI0600379A (ko)
MX (1) MXPA06001691A (ko)

Families Citing this family (13)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8200877B2 (en) * 2006-09-06 2012-06-12 Thomson Licensing Device for processing a stream of data words
US7916676B2 (en) 2007-03-23 2011-03-29 Broadcom Corporation Method and system for holistic energy management in ethernet networks
US7827343B2 (en) * 2007-09-20 2010-11-02 International Business Machines Corporation Method and apparatus for providing accelerator support in a bus protocol
EP2073436B1 (en) * 2007-12-17 2013-02-27 Broadcom Corporation Method and system for utilizing a single connection for efficient delivery of power and multimedia information
US8767952B2 (en) * 2007-12-17 2014-07-01 Broadcom Corporation Method and system for utilizing a single connection for efficient delivery of power and multimedia information
US8028122B2 (en) * 2008-01-07 2011-09-27 Sandisk Il Ltd. Methods and systems for classifying storage systems using fixed static-IP addresses
US7882249B2 (en) * 2008-01-07 2011-02-01 Sandisk Il Ltd. Methods and systems for communicating with storage systems using slim IP stacks
WO2011056101A1 (en) * 2009-11-04 2011-05-12 Saab Ab Centralized supervision of network traffic
US8935542B2 (en) 2010-03-02 2015-01-13 Broadcom Corporation Method and system for a connector with integrated power over Ethernet functionality
DE102010020446B4 (de) * 2010-05-12 2012-12-06 Wago Verwaltungsgesellschaft Mbh Automatisierungsgerät und Verfahren zur beschleunigten Verarbeitung von selektierten Prozessdaten
US9769231B1 (en) * 2011-04-01 2017-09-19 Arris Enterprises Llc QoS for adaptable HTTP video
JP6235812B2 (ja) * 2013-07-03 2017-11-22 日本放送協会 送信装置及び受信装置
US10171422B2 (en) * 2016-04-14 2019-01-01 Owl Cyber Defense Solutions, Llc Dynamically configurable packet filter

Family Cites Families (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2617648B2 (ja) * 1992-02-25 1997-06-04 松下電工株式会社 ネットワークの構成認識装置
JPH10234038A (ja) * 1997-02-21 1998-09-02 Hitachi Ltd データ処理装置、データ形式変換装置、データ通信方法及びデータ処理システム
US20050028206A1 (en) * 1998-06-04 2005-02-03 Imagictv, Inc. Digital interactive delivery system for TV/multimedia/internet
US20020087973A1 (en) * 2000-12-28 2002-07-04 Hamilton Jeffrey S. Inserting local signals during MPEG channel changes
JP3398928B2 (ja) * 1999-10-06 2003-04-21 松下電器産業株式会社 ネットワークアダプタ装置
US7039641B2 (en) * 2000-02-24 2006-05-02 Lucent Technologies Inc. Modular packet classification
WO2001090838A2 (en) * 2000-05-24 2001-11-29 Voltaire Advanced Data Security Ltd. Filtered application-to-application communication
JP2003046629A (ja) * 2001-07-31 2003-02-14 Sony Corp 移動体通信端末の調整計測システム及び調整計測方法並びに移動体通信端末装置
US7269661B2 (en) * 2002-02-12 2007-09-11 Bradley Richard Ree Method using receive and transmit protocol aware logic modules for confirming checksum values stored in network packet
US7280541B2 (en) * 2002-03-15 2007-10-09 Broadcom Corporation Packet filtering based on conditional expression table
JP3557202B2 (ja) * 2002-09-30 2004-08-25 三洋電機株式会社 通信装置、通信方法、およびその方法を利用可能な電話装置、ビデオ電話装置、撮像装置
US20040199650A1 (en) * 2002-11-14 2004-10-07 Howe John E. System and methods for accelerating data delivery
US20040167985A1 (en) * 2003-02-21 2004-08-26 Adescom, Inc. Internet protocol access controller
JP2004349820A (ja) * 2003-05-20 2004-12-09 Sony Corp 画像符号化装置及び画像符号化方法、ストリーミング装置、並びにコンピュータ・プログラム
TWI230531B (en) * 2003-11-04 2005-04-01 Benq Corp Local area network of controlling signal transmission and a method thereof
US7549171B2 (en) * 2004-06-10 2009-06-16 Hitachi, Ltd. Method and apparatus for validation of application data on a storage system

Also Published As

Publication number Publication date
KR101278632B1 (ko) 2013-07-30
US20060187925A1 (en) 2006-08-24
JP2006229977A (ja) 2006-08-31
MXPA06001691A (es) 2006-09-20
CN1822592A (zh) 2006-08-23
BRPI0600379A (pt) 2006-10-03
EP1694023A1 (en) 2006-08-23
JP4822866B2 (ja) 2011-11-24

Similar Documents

Publication Publication Date Title
KR101278632B1 (ko) 인터넷 프로토콜을 사용하여 직렬 버스를 통해 데이터운반을 수행하는 방법 및 그러한 방법에 사용하기 위한장치
KR100926007B1 (ko) 스트리밍 및 제어 처리를 위한 별도의 구성을 이용한미디어 데이터 프로세싱
WO2015105377A1 (en) Method and apparatus for streaming dash content over broadcast channels
CN104093088B (zh) 实现自适应流媒体播放控制的系统及方法
CN108877820B (zh) 一种音频数据混合方法和装置
CN109474715B (zh) 一种基于视联网的资源配置方法和装置
CN109379254B (zh) 一种基于视频会议的网络连接的检测方法和系统
RU2420909C2 (ru) Разделение потока данных
CN110769310B (zh) 一种基于视联网的视频处理方法和装置
US8416786B2 (en) Data transport container for transferring data in a high speed internet protocol network
CN110661726A (zh) 一种基于多链路聚合的数据发送方法和装置
CN111147859A (zh) 一种视频处理方法和装置
EP1694031A1 (en) Method for performing data transport over a serial bus using internet protocol and apparatus for use in the method
CN110769179B (zh) 一种音视频数据流的处理方法和系统
CN110769297A (zh) 一种音视频数据的处理方法和系统
CN110661992A (zh) 数据处理方法和装置
WO2015105376A1 (en) Methods and apparatus for universal presentation timeline alignment
CN110446058B (zh) 视频获取方法、系统、设备和计算机可读存储介质
CN110830762A (zh) 一种音视频数据的处理方法和系统
CN111245592B (zh) 信令传输方法、装置及计算机可读存储介质
CN110536148B (zh) 一种基于视联网的直播方法和设备
CN109618125B (zh) 一种基于视联网的监控方法和装置
CN108966038B (zh) 一种视频数据处理方法及视联网缓存服务器
CN110475089B (zh) 一种多媒体数据的处理方法和视联网终端
CN110602431A (zh) 配置参数修改方法、装置

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: 20160520

Year of fee payment: 4