KR102209296B1 - 서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템 - Google Patents

서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템 Download PDF

Info

Publication number
KR102209296B1
KR102209296B1 KR1020197008011A KR20197008011A KR102209296B1 KR 102209296 B1 KR102209296 B1 KR 102209296B1 KR 1020197008011 A KR1020197008011 A KR 1020197008011A KR 20197008011 A KR20197008011 A KR 20197008011A KR 102209296 B1 KR102209296 B1 KR 102209296B1
Authority
KR
South Korea
Prior art keywords
data stream
unit
segment
data
idle
Prior art date
Application number
KR1020197008011A
Other languages
English (en)
Other versions
KR20190039300A (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 KR20190039300A publication Critical patent/KR20190039300A/ko
Application granted granted Critical
Publication of KR102209296B1 publication Critical patent/KR102209296B1/ko

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L7/00Arrangements for synchronising receiver with transmitter
    • H04L7/0008Synchronisation information channels, e.g. clock distribution lines
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]
    • H04J3/1658Optical Transport Network [OTN] carrying packets or ATM cells
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/02Details
    • H04J3/06Synchronising arrangements
    • H04J3/0635Clock or time synchronisation in a network
    • H04J3/0638Clock or time synchronisation among nodes; Internode synchronisation
    • H04J3/0658Clock or time synchronisation among packet nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1611Synchronous digital hierarchy [SDH] or SONET
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J3/00Time-division multiplex systems
    • H04J3/16Time-division multiplex systems in which the time allocation to individual channels within a transmission cycle is variable, e.g. to accommodate varying complexity of signals, to vary number of channels transmitted
    • H04J3/1605Fixed allocated frame structures
    • H04J3/1652Optical Transport Network [OTN]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L49/00Packet switching elements
    • H04L49/35Switches specially adapted for specific applications
    • H04L49/351Switches specially adapted for specific applications for local area network [LAN], e.g. Ethernet switches
    • H04L49/352Gigabit ethernet switching [GBPS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04JMULTIPLEX COMMUNICATION
    • H04J2203/00Aspects of optical multiplex systems other than those covered by H04J14/05 and H04J14/07
    • H04J2203/0001Provisions for broadband connections in integrated services digital network using frames of the Optical Transport Network [OTN] or using synchronous transfer mode [STM], e.g. SONET, SDH
    • H04J2203/0073Services, e.g. multimedia, GOS, QOS
    • H04J2203/0082Interaction of SDH with non-ATM protocols
    • H04J2203/0085Support of Ethernet

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Two-Way Televisions, Distribution Of Moving Picture Or The Like (AREA)
  • Synchronisation In Digital Transmission Systems (AREA)
  • Time-Division Multiplex Systems (AREA)

Abstract

본 발명의 실시예들은 서비스를 전송하기 위한 방법 및 장치, 서비스를 수신하기 위한 방법 및 장치, 및 네트워크 시스템을 개시한다. 서비스를 전송하기 위한 방법은: 송신단 디바이스에 의해, 원래의 데이터 스트림을 획득하는 단계; 제1 데이터 스트림을 생성하기 위해 원래의 데이터 스트림 내로 수량 마크 k를 삽입하는 단계- 수량 마크 k는 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량이고, k는 0보다 크거나 같음 -; 및 제1 데이터 스트림을 전송하는 단계를 포함한다. 본 발명의 실시예들에서, 서비스의 클록 주파수 및 시간 위상 정보는 투명하게 전송된다.

Description

서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템
본 발명은 통신 분야에 관한 것이고, 특히, 서비스를 전송하기 위한 방법 및 장치, 서비스를 수신하기 위한 방법 및 장치, 및 네트워크 시스템에 관한 것이다.
플렉서블 이더넷(FlexE)은 이더넷 및 전송 네트워크(예를 들어, 광 전송 네트워크(Optical Transport Network, OTN) 및 동기 디지털 계층(Synchronous Digital Hierarchy, SDH))의 일부 기술적 특징을 조합하고, 이더넷 기술의 진화에서 중요한 이정표이다. 플렉서블 이더넷 기술의 출현에 의해, 이더넷 물리적 인터페이스는 가상화 특성들을 나타낸다. 복수의 이더넷 물리적 인터페이스가 함께 본딩되어 여러 가상 논리 포트를 지원할 수 있다. 예를 들어, 4개의 100-기가비트 이더넷(100 Gigabit Ethernet, 100GE) 물리적 인터페이스를 본딩함으로써 획득되는 400-기가비트(400 Gigabit, 400G) 플렉서블 이더넷 물리적 인터페이스 그룹은 여러 논리 포트들을 지원할 수 있다.
이더넷 물리적 인터페이스는 비동기 통신 인터페이스이고, ±100 ppm(1/1만)의 클록 주파수 차이를 갖도록 허용된다. 예를 들어, 10GE에서, 그 공칭 대역폭들이 10 G인 2개의 물리적 인터페이스에 대해, 하나의 대역폭은 공칭값보다 1/1만 더 클 수 있고, 다른 대역폭은 공칭값보다 1/1만 더 작은데, 즉 10G*(1+0.0001) 및 10G*(1-0.0001)이다. 논리 포트에서의 클록 주파수는 물리적 인터페이스 상의 클록 주파수 특성을 상속하고, 따라서 논리 포트는 또한 100 ppm의 차이를 갖는다. 예를 들어, 상이한 물리적 인터페이스들 또는 물리적 인터페이스 그룹들에 의해 형성되고 그 공칭 대역폭들이 25 G인 2개의 논리 포트의 실제 대역폭들은 플렉서블 이더넷에서의 타임슬롯 분할 및 타임슬롯 관리의 오버헤드들이 고려될 때 대략 25G*(20460/20461)*(1+0.0001) 및 25G*(20460/20461)*(1-0.0001)일 수 있다. 플렉서블 이더넷이 서비스를 지니기 위해 사용될 때, 서비스와 물리적 인터페이스들 또는 논리 포트들 사이의 대역폭 레이트 차이에 대한 서비스 레이트 차이를 적응시키기 위해, 유휴-코드-블록(Idle) 삽입 또는 삭제가 홉별로 수행될 필요가 있다. 도 1은 종래 기술에서의 플렉서블 이더넷에서의 서비스 전송의 개략도이다. 도 1에 도시된 바와 같이, 고객 디바이스 Ca와 고객 디바이스 Cb 사이의 서비스가 플렉서블 이더넷 디바이스들 Pa, Pb 및 Pc를 사용하여 지니게 될 때, Pa, Pb, 및 Pc는 유휴-유닛 삽입 또는 삭제를 수행할 필요가 있다.
그러나, 유휴-코드-블록 삽입 또는 삭제는 서비스의 클록 주파수 및 시간 위상 정보의 손실을 야기하는데, 즉, 서비스의 클록 주파수 및 시간 위상 정보는 투명하게 전송될 수 없고, 결과적으로 클록 주파수 및 시간 위상은 서비스의 소스 네트워크 디바이스와 싱크 네트워크 디바이스 사이에서 동기화될 수 없다.
이를 고려하여, 본 발명의 실시예들은 서비스를 전송하기 위한 방법 및 장치, 서비스를 수신하기 위한 방법 및 장치, 및 네트워크 시스템을 제공하여 다음 문제를 해결한다: 서비스의 클록 주파수 및 시간 위상 정보가 플렉서블 이더넷에서 투명하게 전송될 수 없기 때문에, 클록 주파수 및 시간 위상은 서비스의 소스 네트워크 디바이스와 싱크 네트워크 디바이스 사이에서 동기화될 수 없다.
제1 양태에 따르면, 본 발명의 실시예는 서비스를 전송하기 위한 방법을 제공하고, 이 방법은: 송신단 디바이스가 원래의 데이터 스트림을 획득하고; 다음으로, 송신단 디바이스는 원래의 데이터 스트림 내로 수량 마크 k를 삽입하여, 제1 데이터 스트림을 생성하고, 여기서 수량 마크 k는 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같거나; 최종적으로, 송신단 디바이스는 제1 데이터 스트림을 전송한다.
본 발명의 기술적 해결책들에 따르면, 수량 마크 k는 원래의 데이터 스트림 내로 삽입되고, 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용된다. 이러한 방식으로, 수신단 디바이스는 유휴-유닛 삽입 또는 삭제가 수행되는 데이터 스트림으로부터 원래의 데이터 스트림을 수량 마크 k에 따라 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
가능한 구현에서, 수량 마크 k를 원래의 데이터 스트림 내로 삽입하는 것은: 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량을 결정하는 것; 및 데이터 스트림의 제1 세그먼트 내의 제1 위치에 수량 마크 k를 삽입하는 것- 수량 마크 k의 값은 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량과 동일하고, 제1 위치는 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치임 -을 포함한다.
원래의 데이터 스트림은 세그먼트들로 분할되어, 수량 마크 k가 세그먼트에 의해 삽입될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서, 유휴 유닛은 삽입되거나 삭제될 수 있고, 이것은 원래의 데이터 스트림 내의 데이터 유닛들의 수량의 변경을 야기한다. 따라서, 원래의 데이터 스트림 내의 데이터 스트림의 제1 세그먼트 내의 모든 데이터 스트림의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서 유휴 유닛만이 삽입되거나 삭제된다. 따라서, 원래의 데이터 스트림 내의 데이터 스트림의 제1 세그먼트 내의 유휴 유닛들의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하는 것은: 원래의 데이터 스트림 내의 시작 유닛을 식별하고, 시작 유닛의 위치를 제1 위치로서 결정하는 것을 포함한다.
시작 유닛은 고정 패턴을 갖는 코드 블록 유닛일 수 있고, 즉 중복 정보를 갖고, 따라서 수량 마크 k를 운반하기 위해 사용될 수 있다. 선택적으로, 시작 유닛의 위치는 데이터 스트림의 제1 세그먼트의 경계로서 추가로 결정될 수 있다. 즉, 시작 유닛은 수량 마크 k를 운반하기 위해 사용될 수 있고, 데이터 스트림들의 2개의 인접한 세그먼트 사이의 경계를 결정하기 위해 추가로 사용될 수 있다.
가능한 구현에서, 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하는 것은: 수량 마크 k의 임계값을 설정하는 것; 데이터 스트림의 제1 세그먼트의 길이가 임계값보다 크거나 같을 때, 데이터 스트림의 제1 세그먼트 내의 제1 유휴 유닛을 식별하는 것; 및 제1 유휴 유닛의 위치를 제1 위치로서 결정하는 것을 포함한다.
유휴 유닛은 중복 정보를 갖고, 따라서 수량 마크 k를 운반하기 위해 사용될 수 있다. 그러나, 유휴 유닛이 수량 마크 k를 운반하기 위해 과도하게 사용되는 것을 방지하기 위해, k는 데이터 스트림의 세그먼트의 길이가 특정 임계값보다 클 때에만 유휴 유닛 내로 삽입될 수 있다. 선택적으로, 제1 유휴 유닛의 위치는 데이터 스트림의 제1 세그먼트의 경계로서 추가로 결정될 수 있다. 즉, 제1 유휴 유닛은 수량 마크 k를 운반하기 위해 사용될 수 있고, 데이터 스트림들의 2개의 인접한 세그먼트 사이의 경계를 결정하기 위해 추가로 사용될 수 있다.
가능한 구현에서, 인코딩 처리는 제1 데이터 유닛에 대해 수행되거나, 또는 인코딩 처리는 제1 데이터 유닛에 대해 수행되지 않는다.
본 발명의 기술적 해결책들은 원래의 데이터 스트림이 인코딩되기 전에 구현될 수 있거나, 또는 원래의 데이터 스트림이 인코딩된 후에 구현될 수 있다.
가능한 구현에서, 제1 데이터 스트림이 생성된 후에, 방법은 제1 데이터 스트림 내의 유휴 유닛들의 수량을 증가 및/또는 감소시키는 단계를 추가로 포함한다.
수량 마크 k가 삽입된 후에, 수량 마크 k를 운반하는 제1 데이터 스트림 내의 유휴 유닛이 삽입되거나 삭제될 수 있다.
제2 양태에 따르면, 본 발명의 실시예는 서비스를 수신하기 위한 방법을 제공하고, 이 방법은: 수신단 디바이스에 의해, 제1 데이터 스트림을 수신하는 단계; 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 제1 데이터 스트림 내의 제1 데이터 유닛들의 수량을 결정하는 단계- 여기서 k는 0보다 크거나 같음 -; 및 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하는 단계- 원래의 데이터 스트림에서의 제1 데이터 유닛들의 수량은 k와 동일함 -를 포함한다.
본 발명의 기술적 해결책들에 따르면, 제1 데이터 스트림으로부터 수량 마크 k가 추출되고, 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량이 수량 마크 k에 따라 결정되고, 원래의 데이터 스트림이 제1 데이터 스트림으로부터 복구된다. 수신단 디바이스는 유휴 유닛 삽입 또는 삭제가 수행되는 데이터 스트림으로부터 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구하여, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송된다.
가능한 구현에서, 제1 데이터 스트림으로부터 수량 마크 k를 추출하는 것은: 제1 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트에서 제1 위치를 결정하고, 제1 위치로부터 수량 마크 k를 추출하는 것을 포함하고, 제1 위치는 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치이다.
제1 데이터 스트림은 세그먼트들로 분할되어서, 수량 마크 k는 세그먼트에 의해 추출될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서, 유휴 유닛은 삽입되거나 삭제될 수 있고, 이것은 원래의 데이터 스트림 내의 데이터 유닛들의 수량의 변경을 야기한다. 따라서, 원래의 데이터 스트림이 데이터 스트림의 제1 세그먼트로부터 복구된 후에 원래의 데이터 스트림에 포함된 모든 데이터 스트림의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서 유휴 유닛만이 삽입되거나 삭제된다. 따라서, 원래의 데이터 스트림이 데이터 스트림의 제1 세그먼트로부터 복구된 후에 원래의 데이터 스트림에 포함된 유휴 유닛들의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하는 것은: 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량 m을 결정하고, m과 k 사이의 차이에 따라 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량 m을 조정하여, m이 k와 동일하게 하는 것을 포함한다.
제1 데이터 스트림 내의 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량과 수량 마크 k 사이의 차이에 따라 제1 데이터 스트림으로부터 원래의 데이터 스트림이 복구되어, 원래의 데이터 스트림 및 데이터 스트림의 제1 세그먼트가 동일한 수량의 제1 데이터 유닛을 갖게 한다.
가능한 구현에서, m과 k 사이의 차이에 따라 데이터 스트림의 제1 세그먼트에서 제1 데이터 유닛들의 수량 m을 조정하는 것은: m이 k보다 클 때, 데이터 스트림의 제1 세그먼트로부터 (m-k)개의 유휴 유닛을 삭제하는 것; 또는 m이 k보다 작을 때, 데이터 스트림의 제1 세그먼트에 (k-m)개의 유휴 유닛을 삽입하는 것을 포함한다.
원래의 데이터 스트림은 역 유휴-유닛 삽입 또는 삭제에 의해 제1 데이터 스트림으로부터 복구된다.
가능한 구현에서, 방법은 원래의 데이터 스트림의 클록 주파수를 복구하는 단계를 추가로 포함한다.
원래의 데이터 스트림이 제1 데이터 스트림으로부터 복구된 후에, 원래의 데이터 스트림의 클록 주파수가 복구될 수 있어서, 서비스의 클록 주파수가 투명하게 전송되게 한다.
제3 양태에 따르면, 본 발명의 실시예는 서비스를 전송하기 위한 장치를 제공하고, 이 장치는: 원래의 데이터 스트림을 획득하도록 구성되는 획득 모듈; 원래의 데이터 스트림 내로 수량 마크 k를 삽입하여, 제1 데이터 스트림을 생성하도록 구성되는 삽입 모듈; - 수량 마크 k는 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같음 -; 및 제1 데이터 스트림을 전송하도록 구성되는 전송 모듈을 포함한다.
본 발명의 기술적 해결책들에 따르면, 수량 마크 k는 원래의 데이터 스트림 내로 삽입되고, 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용된다. 이러한 방식으로, 서비스를 수신하기 위한 장치는 유휴-유닛 삽입 또는 삭제가 수행되는 데이터 스트림으로부터 원래의 데이터 스트림을 수량 마크 k에 따라 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
가능한 구현에서, 삽입 모듈은 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량을 결정하고; 데이터 스트림의 제1 세그먼트 내의 제1 위치에 수량 마크 k를 삽입하도록 구성되고, 여기서, 수량 마크 k의 값은 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량과 동일하고, 제1 위치는 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치이다.
원래의 데이터 스트림은 세그먼트들로 분할되어, 수량 마크 k가 세그먼트에 의해 삽입될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서, 유휴 유닛은 삽입되거나 삭제될 수 있고, 이것은 원래의 데이터 스트림 내의 데이터 유닛들의 수량의 변경을 야기한다. 따라서, 원래의 데이터 스트림 내의 데이터 스트림의 제1 세그먼트 내의 모든 데이터 스트림의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서 유휴 유닛만이 삽입되거나 삭제된다. 따라서, 원래의 데이터 스트림 내의 데이터 스트림의 제1 세그먼트 내의 유휴 유닛들의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 삽입 모듈은 원래의 데이터 스트림 내의 시작 유닛을 식별하고, 시작 유닛의 위치를 제1 위치로서 결정하도록 구성된다.
시작 유닛은 고정 패턴을 갖는 코드 블록 유닛일 수 있고, 즉 중복 정보를 갖고, 따라서 수량 마크 k를 운반하기 위해 사용될 수 있다. 선택적으로, 시작 유닛의 위치는 데이터 스트림의 제1 세그먼트의 경계로서 추가로 결정될 수 있다. 즉, 시작 유닛은 수량 마크 k를 운반하기 위해 사용될 수 있고, 데이터 스트림들의 2개의 인접한 세그먼트 사이의 경계를 결정하기 위해 추가로 사용될 수 있다.
가능한 구현에서, 삽입 모듈은 수량 마크 k의 임계값을 설정하고; 데이터 스트림의 제1 세그먼트의 길이가 임계값보다 크거나 같을 때, 데이터 스트림의 제1 세그먼트 내의 제1 유휴 유닛을 식별하고; 제1 유휴 유닛의 위치를 제1 위치로서 결정하도록 구성된다.
유휴 유닛은 중복 정보를 갖고, 따라서 수량 마크 k를 운반하기 위해 사용될 수 있다. 그러나, 유휴 유닛이 수량 마크 k를 운반하기 위해 과도하게 사용되는 것을 방지하기 위해, k는 데이터 스트림의 세그먼트의 길이가 특정 임계값보다 클 때에만 유휴 유닛 내로 삽입될 수 있다. 선택적으로, 제1 유휴 유닛의 위치는 데이터 스트림의 제1 세그먼트의 경계로서 추가로 결정될 수 있다. 즉, 제1 유휴 유닛은 수량 마크 k를 운반하기 위해 사용될 수 있고, 데이터 스트림들의 2개의 인접한 세그먼트 사이의 경계를 결정하기 위해 추가로 사용될 수 있다.
가능한 구현에서, 인코딩 처리는 제1 데이터 유닛에 대해 수행되거나, 또는 인코딩 처리는 제1 데이터 유닛에 대해 수행되지 않는다.
본 발명의 기술적 해결책들은 원래의 데이터 스트림이 인코딩되기 전에 구현될 수 있거나, 또는 원래의 데이터 스트림이 인코딩된 후에 구현될 수 있다.
가능한 구현에서, 장치는 제1 데이터 스트림 내의 유휴 유닛들의 수량을 증가 및/또는 감소시키도록 구성되는 삽입 또는 삭제 모듈을 추가로 포함한다.
수량 마크 k가 삽입된 후에, 수량 마크 k를 운반하는 제1 데이터 스트림 내의 유휴 유닛이 삽입되거나 삭제될 수 있다.
제4 양태에 따르면, 본 발명의 실시예는 서비스를 수신하기 위한 장치를 제공하고, 이 장치는: 제1 데이터 스트림을 수신하도록 구성되는 수신 모듈; 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 제1 데이터 스트림 내의 제1 데이터 유닛들의 수량을 결정하도록 구성되는 추출 모듈- k는 0보다 크거나 같음 -; 및 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하도록 구성되는 복구 모듈- 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량은 k와 동일함 -을 포함한다.
본 발명의 기술적 해결책들에 따르면, 제1 데이터 스트림으로부터 수량 마크 k가 추출되고, 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량이 수량 마크 k에 따라 결정되고, 원래의 데이터 스트림이 제1 데이터 스트림으로부터 복구된다. 서비스를 수신하기 위한 장치는, 유휴 유닛 삽입 또는 삭제가 수행되는 데이터 스트림으로부터 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구하여, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송된다.
가능한 구현에서, 추출 모듈은 제1 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트에서의 제1 위치를 결정하고, 제1 위치로부터 수량 마크 k를 추출하도록 구성되고, 제1 위치는 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치이다.
제1 데이터 스트림은 세그먼트들로 분할되어서, 수량 마크 k는 세그먼트에 의해 추출될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서, 유휴 유닛은 삽입되거나 삭제될 수 있고, 이것은 원래의 데이터 스트림 내의 데이터 유닛들의 수량의 변경을 야기한다. 따라서, 원래의 데이터 스트림이 데이터 스트림의 제1 세그먼트로부터 복구된 후에 원래의 데이터 스트림에 포함된 모든 데이터 스트림의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
원래의 데이터 스트림을 전송하는 프로세스에서 유휴 유닛만이 삽입되거나 삭제된다. 따라서, 원래의 데이터 스트림이 데이터 스트림의 제1 세그먼트로부터 복구된 후에 원래의 데이터 스트림에 포함된 유휴 유닛들의 수량은 수량 마크 k를 사용하여 식별될 수 있다.
가능한 구현에서, 복구 모듈은 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량 m을 결정하고, m과 k 사이의 차이에 따라 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량 m을 조정하여, m이 k와 동일하게 하도록 구성된다.
제1 데이터 스트림 내의 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량과 수량 마크 k 사이의 차이에 따라 제1 데이터 스트림으로부터 원래의 데이터 스트림이 복구되어, 원래의 데이터 스트림 및 데이터 스트림의 제1 세그먼트가 동일한 수량의 제1 데이터 유닛을 갖게 한다.
가능한 구현에서, 복구 모듈은 m이 k보다 클 때, 데이터 스트림의 제1 세그먼트로부터 (m-k)개의 유휴 유닛을 삭제하거나; 또는 m이 k보다 작을 때, 데이터 스트림의 제1 세그먼트 내로 (k-m)개의 유휴 유닛을 삽입하도록 구성된다.
원래의 데이터 스트림은 역 유휴-유닛 삽입 또는 삭제에 의해 제1 데이터 스트림으로부터 복구된다.
가능한 구현에서, 장치는 원래의 데이터 스트림의 클록 주파수를 복구하도록 구성되는 클록 모듈을 추가로 포함한다.
원래의 데이터 스트림이 제1 데이터 스트림으로부터 복구된 후에, 원래의 데이터 스트림의 클록 주파수가 복구될 수 있어서, 서비스의 클록 주파수가 투명하게 전송되게 한다.
제5 양태에 따르면, 본 발명의 실시예는 네트워크 시스템을 제공하며, 이 네트워크 시스템은: 제3 양태 또는 제3 양태의 가능한 구현들 중 어느 하나에 따른 장치 및 제4 양태 또는 제4 양태의 가능한 구현들 중 어느 하나에 따른 장치를 포함한다.
제6 양태에 따르면, 본 발명의 실시예는 네트워크 디바이스를 제공하며, 이 네트워크 디바이스는: 프로세서, 메모리, 및 적어도 하나의 네트워크 인터페이스를 포함하고, 메모리는 컴퓨터 실행가능 명령어를 저장하도록 구성되고, 네트워크 디바이스가 실행될 때, 프로세서는 메모리에 저장된 컴퓨터 실행가능 명령어를 실행하여서, 네트워크 디바이스가 제1 양태 또는 제1 양태의 가능한 구현들 중 어느 하나에 따른 방법을 실행하게 한다.
제7 양태에 따르면, 본 발명의 실시예는 네트워크 디바이스를 제공하며, 이 네트워크 디바이스는: 프로세서, 메모리, 및 적어도 하나의 네트워크 인터페이스를 포함하고, 메모리는 컴퓨터 실행가능 명령어를 저장하도록 구성되고, 네트워크 디바이스가 실행될 때, 프로세서는 메모리에 저장된 컴퓨터 실행가능 명령어를 실행하여서, 네트워크 디바이스가 제2 양태 또는 제2 양태의 가능한 구현들 중 어느 하나에 따른 방법을 실행하게 한다.
본 발명의 실시예들에서의 또는 종래 기술에서의 기술적 해결책들을 더 명확하게 설명하기 위해, 다음은 배경 및 실시예들을 설명하기 위해 요구되는 첨부 도면들을 간단히 설명한다.
도 1은 종래 기술에서의 플렉서블 이더넷에서의 서비스 전송의 개략도이다;
도 2a는 본 발명의 실시예에 따른 플렉서블 이더넷에서의 서비스 전송의 개략도이다;
도 2b는 본 발명의 실시예에 따른 플렉서블 이더넷에서의 서비스 전송의 개략도이다;
도 3은 본 발명의 실시예에 따른 플렉서블 이더넷에서의 다른 타입의 서비스 전송의 개략도이다;
도 4는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다;
도 5는 본 발명의 실시예에 따른 데이터 스트림의 다른 포맷의 개략도이다;
도 6은 본 발명의 실시예에 따른 시작 코드 블록의 포맷의 개략도이다;
도 7은 본 발명의 실시예에 따른 6개의 코드 블록의 포맷들의 개략도이다;
도 8은 본 발명의 실시예에 따른 3개의 코드 블록의 포맷들의 개략도이다;
도 9는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다;
도 10은 본 발명의 실시예에 따른 코드 블록의 포맷의 개략도이다;
도 11은 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다;
도 12는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다;
도 13은 본 발명의 실시예에 따른 데이터 스트림의 다른 포맷의 개략도이다;
도 14는 본 발명의 실시예에 따른 5개의 코드 블록의 포맷들의 개략도이다;
도 15는 본 발명의 실시예에 따라 서비스를 전송하는 방법의 예시적인 흐름도이다;
도 16은 본 발명의 실시예에 따른 40GE 물리적 인터페이스의 데이터 처리 절차의 개략도이다;
도 17은 본 발명의 실시예에 따른 AM 포맷 변환의 개략도이다;
도 18은 본 발명의 실시예에 따른 4개의 코드 블록의 포맷들의 개략도이다;
도 19는 본 발명의 실시예에 따른 송신단 디바이스의 개략적 구조도이다;
도 20은 본 발명의 실시예에 따른 10GE 물리적 인터페이스의 데이터 처리 절차의 개략도이다;
도 21은 본 발명의 실시예에 따른 다른 송신단 디바이스의 개략적인 구조도이다;
도 22는 본 발명의 실시예에 따른 수량 마크 삽입 방법의 흐름도이다;
도 23은 본 발명의 실시예에 따른 서비스를 수신하는 방법의 예시적인 흐름도이다;
도 24는 본 발명의 실시예에 따른 수신단 디바이스의 개략적인 구조도이다;
도 25는 본 발명의 실시예에 따른 다른 수신단 디바이스의 개략적인 구조도이다;
도 26은 본 발명의 실시예에 따른 수량 마크 추출 방법의 흐름도이다;
도 27은 본 발명의 실시예에 따른 클록 주파수 복구 시스템의 개략적인 구조도이다;
도 28은 본 발명의 실시예에 따른 고객 디바이스의 개략적인 구조도이다;
도 29는 본 발명의 실시예에 따른 고객 디바이스의 개략적인 구조도이다;
도 30은 본 발명의 실시예에 따라 서비스를 전송하기 위한 장치의 개략적 구조도이다;
도 31은 본 발명의 실시예에 따라 서비스를 수신하기 위한 장치의 개략적 구조도이다;
도 32는 본 발명의 실시예에 따른 네트워크 시스템의 개략적인 구조도이다; 및
도 33은 본 발명의 실시예에 따른 네트워크 디바이스의 개략적인 구조도이다.
본 발명의 목적들, 기술적 해결책들, 및 이점들을 더 명확하고 더 이해가능하게 하기 위해, 이하는 첨부 도면들 및 실시예들을 참조하여 본 발명을 상세히 추가로 설명한다.
본 발명의 실시예들에서 제공되는 기술적 해결책들은 플렉서블 이더넷에 적용될 수 있고, 또한 이더넷, 광학 전송 네트워크(Optical Transport Network, OTN) 네트워크, 또는 동기 디지털 계층 구조(Synchronous Digital Hierarchy, SDH) 네트워크와 같은 다른 타입의 네트워크에 적용될 수 있다. 본 발명의 실시예들은 예로서 플렉서블 이더넷을 사용하여 주로 설명된다.
도 2a는 본 발명의 실시예에 따른 플렉서블 이더넷에서의 서비스 전송의 개략도이다. 도 2a에 도시된 바와 같이, 고객 디바이스 Ca는 고객 디바이스 Cb에 서비스를 전송할 필요가 있고, 서비스 전송은 베어러 네트워크를 사용하여 Ca와 Cb 사이에서 수행될 수 있다. 예를 들어, 복수의 플렉서블 이더넷 디바이스(예를 들어, Pa, Pb, 및 Pc)를 포함하는 플렉서블 이더넷이 베어러 네트워크로서 사용된다. 고객 디바이스는 라우터 또는 스위치와 같은 디바이스일 수 있고, 플렉서블 이더넷 디바이스는 이더넷 디바이스, OTN 디바이스, SDH 디바이스 등일 수 있다.
본 발명의 이 실시예에서, 서비스의 클록 주파수 및 시간 위상 정보의 투명 전송을 구현하기 위해, 고객 디바이스 Ca로부터 서비스의 원래의 데이터 스트림을 수신한 후에, 플렉서블 이더넷에서의 송신단 디바이스 Pa는 원래의 데이터 스트림 내로 수량 마크 k를 삽입하여, 원래의 데이터 스트림 내의 데이터 유닛들의 수량을 식별할 수 있다. 데이터 유닛은 유휴 유닛 및 비-유휴 유닛을 포함한다. 유휴 유닛은 고정 데이터 포맷을 갖는다. 비-유휴 유닛은 유휴 유닛과 상이한 데이터 유닛이고, 복수의 데이터 포맷을 포함한다. 본 발명의 이 실시예에서, 유휴 유닛들의 수량만이 마킹될 수 있거나, 또는 모든 데이터 유닛의 수량이 마킹될 수 있다. 수량 마크 k를 삽입한 후에, 송신단 디바이스 Pa는 종래 기술에서와 같이 동일한 유휴-유닛 삽입 또는 삭제를 추가로 수행할 수 있다. 플렉서블 이더넷에서의 중간 디바이스 Pb는 종래 기술에서와 같은 동일한 유휴-유닛 삽입 또는 삭제를 수행할 수 있다. 중간 디바이스는 복수의 디바이스를 추가로 포함할 수 있는데, 즉, 복수 회의 유휴-유닛 삽입 또는 삭제가 원래의 데이터 스트림 상에서 수행될 수 있다. 플렉서블 이더넷 내의 수신단 디바이스 Pc는 수량 마크 k를 추출하고, 수량 마크 k에 따라 역 유휴-유닛 삽입 또는 삭제를 수행하는데, 즉 원래의 데이터 스트림을 복구한다. 역 유휴-유닛 삽입 또는 삭제는: n개의 유휴 유닛이 원래의 데이터 스트림 내로 삽입되는 경우, 수신단 디바이스 Pc는 n개의 유휴 유닛을 삭제하거나, 또는 n개의 유휴 유닛이 원래의 데이터 스트림으로부터 삭제되면, 수신단 디바이스 Pc는 n개의 유휴 유닛을 삽입한다는 것을 의미한다. 유휴-유닛 삽입 또는 삭제가 수행되기 전에 존재하는 복구된 원래의 데이터 스트림 및 원래의 데이터 스트림은 동일한 수량의 데이터 유닛 또는 유휴 유닛을 갖는다. 따라서, 수신단 디바이스 Pc는 복구된 원래의 데이터 스트림에 따라 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
도 2b는 본 발명의 실시예에 따른 플렉서블 이더넷에서의 서비스 전송의 개략도이다. 도 2b에 도시된 바와 같이, 서비스는 고객 디바이스 Cb로부터 고객 디바이스 Ca로 전송되고, 실행 절차는 도 2a의 것과 반대된다. 예를 들어, 도 2b의 Pc에 의해 수행되는 단계는 도 2a의 Pa에 의해 수행되는 단계와 동일하고, 도 2b의 Pa에 의해 수행되는 단계는 도 2a의 Pc에 의해 수행되는 단계와 동일하다.
도 3은 본 발명의 실시예에 따른 플렉서블 이더넷에서의 다른 타입의 서비스 전송의 개략도이다. 도 3에 도시된 바와 같이, 서비스가 고객 디바이스 Ca로부터 고객 디바이스 Cb로 전송되는 것이 설명을 위한 예로서 사용된다. 고객 디바이스 Ca는 수량 마크 k를 삽입할 수 있고, 고객 디바이스 Cb는 수량 마크 k를 추출하고, 역 유휴-유닛 삽입 또는 삭제를 수행하여 원래의 데이터를 복구할 수 있다. Pa, Pb, 및 Pc와 같은 플렉서블 이더넷 디바이스들은 임의의 개선을 행할 필요없이, 종래 기술에서와 같은 동일한 유휴-유닛 삽입 또는 삭제를 수행할 수 있어서, 본 발명에서의 기술적 해결책들은 기존의 플렉서블 이더넷과 잘 호환가능하게 된다.
본 발명의 실시예들에서 유휴 유닛들의 수량을 마킹하는 원리를 설명하기 위해 이하에서 예가 사용된다. 원래의 데이터 스트림의 데이터 포맷은 인코딩 후에 존재하는 데이터 포맷을 포함할 수 있거나, 또는 인코딩이 수행되지 않을 때 존재하는 데이터 포맷을 포함할 수 있다. 유휴 유닛의 포맷은 유휴 코드 블록, 유휴 바이트 유닛 등을 포함할 수 있다.
인코딩 후에 존재하는 데이터 포맷은 64b/66b 인코딩을 예로서 사용하여 설명된다.
도 4는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다. 도 4에 도시된 바와 같이, 원래의 데이터 스트림, 시작 코드 블록 S, 종단 코드 블록 T, 및 복수의 코드 블록 D는 그룹, 예를 들어, 도면에 도시된 그룹(401) 및 그룹(403)으로서 간주된다. 예를 들어, 도면에 도시된 유휴 코드 블록(405) 및 유휴 코드 블록(407)과 같은 임의의 2개의 그룹 사이에 하나 이상의 유휴 코드 블록(idle)이 있을 수 있다. 시간 t에서 원래의 데이터 스트림을 수신한 후에, 송신단 디바이스는 원래의 데이터 스트림을 추가로 지연시킬 수 있는데, 예를 들어 도 4의 하나의 코드 블록에 의해 원래의 데이터 스트림을 지연시킬 수 있다. 원래의 데이터 스트림을 지연시킨 후, 송신단 디바이스 또는 중간 디바이스는 유휴 코드 블록에 대해 삽입 또는 삭제 동작을 수행할 수 있다. 예를 들어, 도 4는 다음 2개의 경우를 도시한다: 유휴 코드 블록(407)은 원래의 데이터 스트림으로부터 삭제되고, 유휴 코드 블록(409)은 원래의 데이터 스트림 내로 삽입된다. 수신단 디바이스는 유휴-코드-블록 삽입 또는 삭제가 수행되는 데이터 스트림으로부터 원래의 데이터 스트림을 복구한다.
도 5는 본 발명의 실시예에 따른 데이터 스트림의 다른 포맷의 개략도이다. 도 5에 도시된 바와 같이, 시간 t에서 원래의 데이터 스트림을 수신한 후에, 송신단 디바이스는 원래의 데이터 스트림 내의 시작 코드 블록(예를 들어, 시작 코드 블록(505)) 내로 수량 마크 k를 삽입할 수 있다. 송신단 디바이스 또는 중간 디바이스가 유휴-코드-블록 삽입 또는 삭제를 수행하는 프로세스에서, 수량 마크 k가 원래의 데이터를 복구하기 위한 수신단 디바이스에 의해 추출될 때까지, 수량 마크 k는 항상 데이터 스트림에 존재한다. 도 5에 도시된 바와 같이, 그룹(501) 및 그룹(503)이 포함된다. 그룹(501) 및 그룹(503)은 인접한 그룹들일 수 있거나, 또는 그룹(501)과 그룹(503) 사이에 다른 그룹이 존재할 수 있다. 즉, 하나의 수량 마크 k가 하나의 그룹에 대해 삽입될 수 있거나, 하나의 수량 마크 k가 복수의 그룹에 대해 삽입될 수 있다. 그룹(501)의 시작 코드 블록과 그룹(503)의 시작 코드 블록 사이의 코드 블록들은 그 길이가 k인 (그룹(501)의 시작 코드 블록을 포함하고, 그룹(503)의 시작 코드 블록을 제외한) 데이터 스트림의 세그먼트로서 간주된다. 수량 마크 k는 시작 코드 블록(505) 내로 삽입될 수 있고, 수량 마크 k는 그 길이가 k인 데이터 스트림의 세그먼트에서의 모든 코드 블록의 수량을 식별하기 위해 사용될 수 있다. 본 발명의 이 실시예에서, k는 그룹(503)의 시작 코드 블록(505)을 포함하지 않거나; 또는 확실히 그룹(503)의 시작 코드 블록을 포함할 수 있다. 이것은 본 발명에서 제한되지 않는다. 비-유휴 코드 블록들의 수량이 변경되지 않고, 유휴 코드 블록만이 삽입되거나 삭제되기 때문에, 수량 마크 k는 유휴 코드 블록들의 수량을 직접 식별하기 위해 추가로 사용될 수 있다. 유휴 코드 블록은 그룹들 사이에 존재할 수 있거나, 그룹 내에 존재할 수 있다. 도면은 수량 마크 k0이 그룹(501)에 삽입되는 시작 코드 블록(507)을 추가로 도시하고, 시작 코드 블록(507)의 기능은 수량 마크 k를 운반하는 시작 코드 블록(505)의 것과 유사하다. 상세들은 본 명세서에서 설명되지 않는다.
(플렉서블 이더넷을 포함하는) 이더넷 데이터 프레임 내의 시작 코드 블록 S는 고정 비트 패턴을 갖는 코드 블록이고, 전송 프로세스에서 변경되지 않기 때문에, 시작 코드 블록 S는 중복 정보를 포함하고, 수량 마크 k와 같은 정보를 운반하기 위해 사용될 수 있다. 예를 들어, 미디어 독립 인터페이스(Media Independent Interface, MII) 인터페이스 상에서, 프리앰블 요소는 8-바이트 송신 (문자) 데이터(Transmit (character) Data, TXD)/수신된 (문자) 데이터(Received (character) Data, RXD)를 포함하고, 8-비트 송신 (문자) 제어 (신호들)(Transmit (character) Control (signals), TXC)/수신된 (문자) 제어 (신호들)(Received (character) Control (signals), RXC)을 사용하여 표시된다. 예를 들어, 프리앰블 요소의 <TXC,TXD>는 다음과 같다: <1,0xFB> <0,0x55> <0,0x55> <0,0x55> <0,0x55> <0,0x55> <0,0x55> <0,0xD5>이고, 여기서 0xFB는 프레임 시작(start-of-frame) 제어 문자 "/S/"이고, 0xD5는 프레임 시작 디리미터(Start of Frame Delimiter, SFD)이다. 인코딩된 프리앰블 요소의 데이터 포맷은 시작 코드 블록으로서 지칭되고, 8-바이트 프리앰블 요소의 경계는 64b/66b 코드 블록의 경계와 정렬되고, 예를 들어 "/S/"는 시작 코드 블록의 경계와 정렬된다. 도 6은 본 발명의 실시예에 따른 시작 코드 블록의 64b/66b 인코딩 포맷이고, 시작 코드 블록은 동기화 헤더 "10" 및 제어 코드 블록 타입 "0x78"을 포함한다.
수량 마크 k는 시작 코드 블록 내로 삽입되고, 시작 코드 블록은 미리 설정된 패턴을 사용하여 식별된 코드 블록으로 변경될 수 있다. 도 7은 본 발명의 실시예에 따른 6개의 코드 블록의 포맷들의 개략도이다. 예를 들어, 도 6에 도시된 시작 코드 블록에 기초하여, 코드 블록(701)에 대해, D1의 "0x55"는 "0x00"으로 변경되고, D7의 "0xD5"는 "0xFF"로 변경된다. 코드 블록(703)에 대해, D1은 "0xA"로 변경된다. 코드 블록(705)에 대해, D7은 "0xAA"로 변경된다. 코드 블록(707)에 대해, D7은 "0xA"로 변경된다. 코드 블록(709)에 대해, D1은 "0xAA"로 변경되고, D7은 "0xAA"로 변경된다. 코드 블록(711)에 대해, D1은 "0xA"로 변경되고, D7은 "0xA"로 변경된다. 6개의 코드 블록 내의 D2, D3, D4, D5 및 D6은 수량 마크 k를 운반하기 위해 사용될 수 있다. 또 다른 코드 블록 포맷이 추가로 사용될 수 있다. 도 8은 본 발명의 실시예에 따른 3개의 코드 블록의 포맷들의 개략도이다. 코드 블록들(801 및 803)의 코드 블록 포맷들은 미리 설정된 패턴 "0x4B+0xA"를 사용하여 식별된다. 코드 블록(805)에 대해, 제어 코드 블록 타입 "0x78"은 "0xFF"로 변경된다. 특정 구현은, k를 운반하는 시작 코드 블록이 식별될 수 있다면, 도 7 및 도 8에 도시된 코드 블록 포맷들로 제한되지 않는다.
처리 지연을 줄이고 캐시 공간을 절감하기 위해, 도 5에 기초하여 세그먼트 분할이 추가로 수행될 수 있다. 도 9는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다. 도 9에 도시된 바와 같이, 그 길이가 k인 데이터 스트림은 그 길이들이 k1 및 k2인 2개의 세그먼트로 분할된다. 수량 마크 k1은 세그먼트 k1에 후속하는 제1 코드 블록(901)(유휴 코드 블록) 내로 삽입될 수 있고, 세그먼트 k1에서의 모든 코드 블록의 수량 또는 유휴 코드 블록들의 수량을 식별하기 위해 사용된다. 수량 마크 k2는 세그먼트 k2에 후속하는 제1 코드 블록(903)(시작 코드 블록) 내로 삽입되고, 세그먼트 k2에서의 모든 코드 블록의 수량 또는 유휴 코드 블록들의 수량을 식별하기 위해 사용된다. 수량 마크들 k1 및 k2가 각각 유휴 코드 블록과 시작 코드 블록 내로 삽입될 때, 유휴 코드 블록과 시작 코드 블록은 미리 설정된 패턴을 사용하여 식별된 블록들로 변경될 수 있다. 상세에 대해서는, 도 7 및 도 8에 도시된 실시예들을 참조한다. 상세들은 본 명세서에서 다시 설명되지 않는다. 선택적으로, k1을 운반하는 유휴 코드 블록(901) 및 k2를 운반하는 시작 코드 블록(903)은 상이한 미리 설정된 패턴들을 사용하여 식별되어서, 수신단 디바이스가 원래의 코드 블록을 신속하게 복구할 수 있게 한다. 시작 코드 블록 및 종단 코드 블록은 일반적으로 쌍들로 나타나서, 시작 코드 블록에서의 문자 "/S/"와 종료 코드 블록에서의 문자 "/T/" 사이의 페어링 관계를 충족시킨다. 수량 마크 k1이 삽입되는 유휴 코드 블록은 그룹의 시작 코드 블록으로서 간주될 수 있다. 선택적으로, k1을 운반하는 코드 블록에 후속하는 임의의 유휴 코드 블록은 종단 코드 블록으로서 설정될 수 있다. 도면은 수량 마크 k0이 삽입되는 시작 코드 블록(905)을 추가로 도시하고, 시작 코드 블록(905)의 기능은 k1을 운반하는 시작 코드 블록(901)의 기능 및 k2를 운반하는 시작 코드 블록(903)의 기능과 유사하다. 상세들은 본 명세서에서 설명되지 않는다.
수량 마크들 k, k1, k2 등의 신뢰성을 보장하기 위해, 수량 마크들 k, k1 및 k2와 같은 필드들에 대해 체크가 추가로 수행될 수 있다. 도 10은 본 발명의 실시예에 따른 코드 블록의 포맷의 개략도이다. 순환 중복 체크(Cyclic Redundancy Check, CRC) 체크 비트가 수량 마크 k, 예를 들어, CRC8에 대해 설정되어서, 수신단 디바이스가 전송 신뢰성에 대한 검증을 수행하게 한다.
수량 마크는 원래의 데이터 스트림 내의 모든 시작 코드 블록 또는 일부 시작 코드 블록 내로 삽입될 수 있다. 수량 마크를 시작 코드 블록 또는 유휴 코드 블록 내로 삽입하는 것은 실제로 시작 코드 블록 또는 유휴 코드 블록을 수량 마크를 운반하는 코드 블록으로 대체하는 것이다. 시작 코드 블록 또는 유휴 코드 블록은 먼저 미리 설정된 패턴을 사용하여 식별된 코드 블록으로 변경될 수 있고, 그 다음, 수량 마크는 미리 설정된 패턴을 사용하여 식별된 코드 블록 내로 삽입된다. 대안적으로, 수량 마크가 먼저 시작 코드 블록 또는 유휴 코드 블록 내로에 삽입되고, 그 다음, 수량 마크가 삽입되는 시작 코드 블록 또는 유휴 코드 블록이 미리 설정된 패턴을 사용하여 식별되는 코드 블록으로 변경된다. 대안적으로, 미리 설정된 패턴을 사용하여 식별되고 수량 마크를 운반하는 코드 블록이 시작 코드 블록 또는 유휴 코드 블록의 위치에 직접 삽입된다. 이것은 본 발명에서 제한되지 않는다.
인코딩이 수행되지 않을 때 존재하는 데이터 포맷은 삽입 또는 삭제가 4 바이트의 입도로 수행되는 데이터 포맷을 사용하여 설명된다.
인코딩이 수행되지 않을 때 존재하는 데이터 포맷에 대해, 유휴 유닛은 복수의 유휴 바이트를 포함할 수 있다. 예를 들어, 유휴 바이트 삽입 또는 삭제는 4 바이트 또는 8 바이트를 포함하는 유휴 유닛의 입도로 수행될 수 있다. 8개의 바이트가 하나의 64b/66b 코드 블록에 대응하고 있을 수 있기 때문에, 인코딩이 수행되지 않을 때 존재하는 데이터 포맷의 처리 방식은 인코딩 후에 존재하는 데이터 포맷의 처리 방식과 유사하다. 도 11은 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다. 도 11에 도시된 바와 같이, MII 바이트 데이터 스트림 <TXC/RXC, TXD/RXD>는 64b/66b 코드 블록과 일대일 대응한다. 예를 들어, 8개의 유휴 바이트 "/i/"는 하나의 유휴 코드 블록에 대응하고 있고, 8개의 데이터 바이트 "/d/"는 하나의 데이터 코드 블록에 대응하고 있고, 시작 위치로서 프레임 시작 제어 문자 "/S/"를 사용하는 8개의 바이트는 하나의 시작 코드 블록에 대응하고 있다. 도 11은 3개의 경우를 도시한다. 제1 경우에, 원래의 데이터 스트림에서, 프레임 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제5 위치에 대응하고 있다. 제2 경우에, 4개의 유휴 바이트(1101)는 원래의 데이터 스트림으로부터 삭제되고, 프레임 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제1 위치에 대응하고 있다. 제3 경우에, 4개의 유휴 바이트(1103)는 원래의 데이터 스트림 내로 삽입되고, 프레임 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제1 위치에 대응하고 있다.
도 12는 본 발명의 실시예에 따른 데이터 스트림의 포맷의 개략도이다. 도 12에 도시된 바와 같이, 수량 마크 k는 원래의 데이터 스트림 내로 삽입된다. 수량 마크 k는 바이트마다에 기초하여 수량을 식별하기 위해 사용될 수 있거나, 4 바이트마다에 기초하여 수량을 식별하기 위해 사용될 수 있거나, 8 바이트마다 기초하여 수량을 식별하기 위해 사용될 수 있다. 도 12에서, 수량 마크 k는 프레임 시작 제어 문자 "/S/"가 위치되고 원래의 데이터 스트림 내에 있는 8바이트 유닛들(1201 및 1203)(프리앰블-요소 바이트 유닛으로 지칭됨) 내로 삽입된다. 즉, 수량 마크 k는 프리앰블-요소 바이트 유닛 이전에 데이터 바이트들의 수량 또는 유휴 바이트들의 수량을 데이터 스트림의 세그먼트에서 식별하기 위해 사용될 수 있다. 도 12에서, 8 바이트 유닛(1201)의 프레임 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제5 위치에 대응하고 있고, 8 바이트 유닛(1203)의 프레임 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제1 위치에 대응하고 있다. 또한, k를 운반하는 8-바이트 유닛은 "0x00" 및 "0xFF"와 같은 미리 설정된 바이트를 사용하여 식별될 수 있다. 선택적으로, 필드 k는 C 필드(CRC)를 사용하여 추가로 체크될 수 있다.
처리 지연을 줄이고 캐시 공간을 절감하기 위해, 길이가 k인 데이터 스트림은 도 12에 기초하여 세그먼트들로 추가로 분할될 수 있는데, 예를 들어 그 길이들이 k1 및 k2인 데이터 스트림들의 2개의 세그먼트로 분할된다. 도 13은 본 발명의 실시예에 따른 데이터 스트림의 다른 포맷의 개략도이다. 수량 마크 k1은 세그먼트 k1에 후속하는 제1 8-바이트 유닛(1303)(유휴 바이트 유닛) 내로 삽입될 수 있고, 세그먼트 k1에서의 모든 데이터 바이트의 수량 또는 유휴 바이트들의 수량을 식별하기 위해 사용된다. 수량 마크 k2는 세그먼트 k2에 후속하는 제1 8-바이트 유닛(1301)(프리앰블-요소 바이트 유닛) 내로 삽입될 수 있고, 세그먼트 k2에서의 모든 데이터 바이트의 양 또는 유휴 바이트들의 수량을 식별하기 위해 사용된다. 도 13에 도시된 바와 같이, 시작 제어 문자 "/S/"는 64b/66b 코드 블록 내의 제1 위치 또는 제5 위치에 대응하고 있을 수 있다. k1을 운반하는 8-바이트 유닛은 미리 설정된 바이트, 예를 들어, 8-바이트 유닛(1303)에서의 "0xFF" 및 "0x00", 8-바이트 유닛(1305)에서의 "0x9C", 및 8-바이트 유닛(1307)에서의 "0xF0"을 사용하여 식별될 수 있다. k2를 운반하는 8-바이트 유닛(1301)은 "0x00" 및 "0xFF"와 같은 미리 설정된 바이트를 사용하여 식별될 수 있다. 선택적으로, k1을 운반하는 유휴 바이트 유닛 및 k2를 운반하는 프리앰블-요소 바이트 유닛은 상이한 미리 설정된 바이트들을 사용하여 식별될 수 있어서, 수신단 디바이스가 원래의 8-바이트 유닛을 신속하게 복구하게 한다. 선택적으로, 필드들 k1 및 k2는 C 필드(CRC)를 사용하여 추가로 체크될 수 있다.
수량 마크는 원래의 데이터 스트림 내의 모든 프리앰블-요소 바이트 유닛 또는 일부 프리앰블 요소 바이트 유닛 내로 삽입될 수 있다. 수량 마크를 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛 내로 삽입하는 것은 실제로 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛을 수량 마크를 운반하는 유닛으로 대체하는 것이다. 미리 설정된 바이트가 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛 내로 먼저 삽입될 수 있고, 이어서 수량 마크가 미리 설정된 바이트를 사용하여 식별된 유닛 내로 삽입된다. 대안적으로, 수량 마크가 먼저 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛 내로 삽입되고, 이어서 미리 설정된 바이트가 수량 마크가 삽입되는 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛 내로 삽입된다. 대안적으로, 수량 마크 및 미리 설정된 바이트를 운반하는 유닛은 프리앰블-요소 바이트 유닛 또는 유휴 바이트 유닛의 위치 내로 직접 삽입될 수 있다. 이것은 본 발명에서 제한되지 않는다.
8-바이트 MII 바이트 데이터 스트림과 64b/66b 코드 블록 사이에 대응관계가 존재한다. 따라서, k, k1, 및 k2를 운반하는 8-바이트 유닛들은 도 14에 도시된 5개의 코드 블록 포맷에 대응하고 있을 수 있다. 도 14에 도시된 바와 같이, 도 12의 8-바이트 유닛들(1201 및 1203) 및 도 13의 8-바이트 유닛(1301)은 코드 블록(1401)에 대응하고 있을 수 있다. 도 13의 8-바이트 유닛(1303)은 코드 블록(1403)에 대응하고 있을 수 있다. 도 13의 8-바이트 유닛(1305)은 코드 블록(1405)에 대응하고 있을 수 있다. 도 13의 8-바이트 유닛(1307)은 코드 블록(1407) 또는 코드 블록(1409)에 대응하고 있다.
수량 마크들 k, k1 및 k2는 8 비트, 16 비트, 24 비트, 32 비트 등의 필드 길이들을 사용하여 표현될 수 있다는 것을 알 수 있다. 8 비트의 길이가 사용될 때, 표현 범위는 0 내지 255를 포함하고; 16 비트의 길이가 사용될 때, 표현 범위는 0 내지 65535를 포함한다. 유추에 의해, 분할에 의해 획득되는 데이터 스트림의 세그먼트의 길이에 따라 상이한 비트 길이들이 선택될 수 있다.
본 발명의 실시예들에서, 원래의 데이터 스트림은 데이터 스트림들의 복수의 세그먼트로 분할되고, 수량 마크가 삽입될 수 있는 시작 유닛 또는 유휴 유닛과 같은 데이터 유닛은 데이터 스트림의 각각의 세그먼트로부터 발견된다. 수량 마크가 삽입되는 데이터 유닛은 데이터 스트림의 식별된 세그먼트에 인접한 위치에 위치할 수 있거나, 데이터 스트림의 식별된 세그먼트에 인접하지 않은 위치에 위치할 수 있다. 수량 마크가 삽입되는 데이터 유닛은 데이터 스트림의 식별된 세그먼트 이전에 위치할 수 있거나, 데이터 스트림의 식별된 세그먼트 후에 위치할 수 있다. 이것은 본 발명에서 제한되지 않는다. 또한, 수량 마크가 삽입되는 데이터 유닛은 데이터 스트림의 세그먼트에서의 시작 위치를 식별하기 위해 사용될 수 있거나, 데이터 스트림의 세그먼트에서의 종료 위치를 식별하기 위해 사용될 수 있다. 예를 들어, 임의의 시작 코드 블록은 시작 코드 블록이 위치하는 데이터 스트림의 세그먼트에서의 시작 위치를 식별하기 위해 사용될 수 있거나, 데이터 스트림의 이전 세그먼트에서의 종료 위치를 식별하기 위해 사용될 수 있다.
유휴 유닛들의 수량을 마킹하는 원리를 참조하면, 본 발명의 실시예들은 처리 절차의 관점에서 후술된다. 도 15는 본 발명의 실시예에 따른 서비스를 전송하기 위한 방법의 예시적인 흐름도이다. 도 15에 도시된 바와 같이, 이 방법은 플렉서블 이더넷에서 송신단 디바이스에 의해 실행될 수 있고, 다음의 단계들을 포함한다.
S1501. 송신단 디바이스는 원래의 데이터 스트림을 획득한다.
본 발명의 이 실시예에서, 원래의 데이터 스트림은 인터패킷 갭(Interpacket Gap, IPG), 예를 들어 이더넷 패킷 서비스 데이터 스트림을 포함하는 서비스 데이터 스트림일 수 있다. IPG는 유휴 유닛일 수 있고, 복수의 데이터 포맷, 예를 들어, 미디어 액세스 제어(Media Access Control, MAC) 계층, MII 유휴 바이트 유닛, 및 물리 계층 인코딩 포맷을 갖는 유휴 코드 블록에서 또는 그 위의 유휴 패킷을 갖는다. 유휴 코드 블록의 인코딩 포맷은, 예를 들어, 64b/66b 인코딩, 8b/10b 인코딩, 또는 512b/514b 인코딩이다.
S1503. 제1 데이터 스트림을 생성하기 위해 원래의 데이터 스트림 내로 수량 마크 k를 삽입하고, 여기서 수량 마크 k는 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같다.
예를 들어, 제1 데이터 유닛은 원래의 데이터 스트림 내의 모든 데이터 유닛일 수 있거나, 원래의 데이터 스트림 내의 유휴 유닛일 수 있다. 수량 마크 k가 원래의 데이터 스트림 내의 모든 데이터 유닛의 수량을 식별하기 위해 사용될 때, k는 0보다 큰 정수일 수 있다. 수량 마크 k가 원래의 데이터 스트림 내의 유휴 유닛들의 수량을 식별하기 위해 사용될 때, k는 0보다 크거나 같은 정수일 수 있다.
S1505. 수량 마크 k를 운반하는 제1 데이터 스트림을 전송한다.
본 발명의 이 실시예에서, 플렉서블 이더넷에 의해 지니게 되는 40GE 서비스 및 10GE 서비스는 설명을 위한 예로서 주로 사용된다. 100GE 서비스 또는 오버(over) 100GE 서비스의 처리 절차는 40GE 서비스의 처리 절차와 유사하고, 25GE 서비스의 처리 절차는 10GE 서비스의 처리 절차와 유사하다.
40GE 서비스
본 발명의 이 실시예에서의 기술적 해결책들을 더 명확하게 설명하기 위해, 먼저, 40GE 물리적 인터페이스가 간략하게 설명된다. 40GE 물리적 인터페이스의 MII는 40 Gbps 미디어 독립 인터페이스(40 Gbps Media Independent Inteface, XLGMII)로서 지칭된다. XLGMII는 40GE 물리적 인터페이스에 대응하고 있는 클록 주파수 및 시간 위상을 상속하고, 명목 레이트는 40Gbps/64*(16383/16384)=625*(16383/16384) MHz이다. 도 16은 본 발명의 실시예에 따른 40GE 물리적 인터페이스의 데이터 처리 절차의 개략도이다. 도 16에 도시된 바와 같이, 40GE 물리적 인터페이스의 물리적 계층 구조는 물리적 코딩 서브 계층(Physical Coding Sub-layer, PCS)(1601)을 포함하고, 다음 서브 계층들 중 임의의 하나 이상을 추가로 포함한다: 물리적 매체 부착(Physical Medium Attachment, PMA) 서브 계층, 물리적 매체 의존적(Physical Medium Dependent, PMD) 서브 계층, 또는 순방향 에러 정정(Forward Error Correction, FEC)(1603). 40GE 물리적 인터페이스의 물리적 계층 구조는 조정 서브 계층(Reconciliation Sub-layer, RS)(도면에 도시되지 않음)을 추가로 포함한다. XLGMII 인터페이스는 RS와 PCS 사이에 위치된다. PCS의 전송 방향 처리(1605)는 인코딩, 스크램블링, 멀티채널 분배, 정렬 코드 블록(Alignment Marker, AM) 삽입 등을 포함할 수 있다. PCS의 수신 방향 처리(1607)는 직렬 요소, AM 삭제, 디스크램블링, 디코딩 등을 획득하기 위해 멀티채널 요소 동기화, AM 로킹 및 채널 정렬, 비트 에러 레이트(Bit Error Rate, BER) 모니터링, 채널 재배열 및 조합을 포함할 수 있다. 도 16에 도시된 처리 단계들의 경우, 종래 기술을 참조한다. 전송 방향(1605)에서, XLGMII 인터페이스로부터 데이터 스트림을 수신한 후에, PCS는 데이터 스트림을 복수의 채널에 분배(멀티채널 분배)하고, AM을 각각의 채널에 삽입(AM 삽입)할 필요가 있다. 수신 방향(1607)에서, 데이터 스트림을 XLGMII 인터페이스에 전송하기 전에, PCS는 복수의 채널로부터 데이터 스트림을 수신하고, 복수의 채널 상에서 데이터 스트림 상에서 정렬 및 재정렬을 수행하고, 직렬 데이터 스트림(멀티채널 요소 동기화, AM 로킹 및 채널 정렬, 및 채널 재정렬 및 조합을 복구하여 시리얼 요소를 획득함)을 복구하고, 각각의 채널(AM 삭제)의 AM을 삭제하고, 디스크램블링 및 디코딩을 수행한다.
원래의 데이터 스트림이 40GE 물리적 인터페이스로부터 수신될 수 있다면, 단계 S1503은 40GE 물리적 인터페이스의 수신 방향 처리(1607)에서의 디스크램블링 후에 수행될 수 있거나, 또는 디코딩 전에 또는 후에 수행될 수 있다. 본 발명의 이 실시예는 도 16에 도시된 데이터 처리 절차에 기초하여 구현될 수 있지만, 도 16에 도시된 예에 제한되지 않는다. 예를 들어, 데이터 처리 절차는 AM 삭제 단계를 포함하지 않을 수 있다. AM이 삭제되지 않으면, 수량 마크 k가 삽입될 때, AM은 통계 수집을 위해 원래의 데이터 스트림에서 데이터 유닛으로서 추가로 사용될 필요가 있다. 도 17은 본 발명의 실시예에 따른 AM 포맷 변환의 개략도이다. 도 17에 도시된 바와 같이, AM 로킹 및 멀티채널 정렬 후에, 데이터 스트림 A 내의 AM 코드 블록(예컨대, AM0, AM1, AM2 또는 AM3)은 데이터 스트림 B 내의 특수 코드 블록으로 대체될 수 있다. 도 18은 본 발명의 실시예에 따른 4개의 코드 블록의 포맷들의 개략도이다. 도 18에 도시된 바와 같이, AM0, AM1, AM2 및 AM3은 코드 블록들(1801, 1803, 1805, 및 1807)로 각각 대체된다. 대안적으로, AM0, AM1, AM2 및 AM3은 4개의 동일한 코드 블록, 예를 들어, 전술한 4개의 코드 블록 중 어느 하나로 대체될 수 있다.
도 19는 본 발명의 실시예에 따른 송신단 디바이스(1900)의 개략적인 구조도이다. 도 19에 도시된 바와 같이, 송신단 디바이스(1900)는 40GE 물리적 인터페이스의 PMA/PMD/FEC(1901)로부터 원래의 데이터 스트림을 수신한다. 40GE 물리적 인터페이스의 PCS의 수신 방향 처리(1903)에 대해서는, 도 16에 도시된 수신 방향 처리(1607)를 참조한다. PCS의 수신 방향 처리(1903)는 물리적 회로를 사용하여 구현될 수 있거나, 논리 회로를 사용하여 구현될 수 있거나, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수 있다. 수량 마크 k 삽입(1905)은 PCS의 수신 방향 처리(1903) 동안 구현될 수 있거나, PCS의 수신 방향 처리(1903) 후에 구현될 수 있다. 선택적으로, 수량 마크 k 삽입(1905) 후에, 유휴-유닛 삽입 또는 삭제(1907)가 레이트 적응을 위해 수행될 수 있다. 레이트 적응을 위한 유휴-유닛 삽입 또는 삭제의 경우, 종래 기술을 참조한다. 그 다음, 수량 마크 k가 삽입되는 제1 데이터 스트림은 플렉서블 이더넷 물리적 인터페이스(또는 인터페이스 그룹)(1909)에 의해 형성된 40GE 논리 포트(1911)를 사용하여 전송될 수 있다.
10GE 서비스
도 20은 본 발명의 실시예에 따른 10GE 물리적 인터페이스의 데이터 처리 절차의 개략도이다. 10GE 물리적 인터페이스의 MII는 XGMII로서 지칭되고, XGMII는 32 비트의 데이터 비트 폭을 사용하고, 프레임 시작 제어 문자는 4 바이트의 경계와 정렬되는데, 즉 프레임 시작 제어 문자는 64b/66b 코드 블록 내의 제1 위치 또는 제5 위치에 위치할 수 있다. 도 20에 도시된 바와 같이, 10GE 물리적 인터페이스의 물리적 계층 구조는 40GE 물리적 인터페이스의 물리적 계층 구조와 유사하고, PCS(2001) 및 이하의 부속층들: PMA, PMD 또는 FEC(2003) 중 임의의 하나 이상을 포함한다. PCS의 전송 방향 처리(2005)는 인코딩 및 스크램블링을 포함할 수 있다. PCS의 수신 방향 처리(2007)는 요소 동기화, 디스크램블링, 및 디코딩을 포함할 수 있다. 현재의 플렉서블 이더넷에서는, 분할을 통해 논리 포트를 획득하기 위해 시간 분할 다중화(Time Division Multiplex, TDM)가 100GE 물리적 인터페이스에 기초하여 64b/66b 코드 블록에 따라 수행되기 때문에, 코드 블록 타입 변환은 10GE 서비스에 대해 수행될 필요가 있다. 즉, PCS의 수신 방향(2007)에서, 디코딩(예를 들어, 64b/66b 디코딩)이 먼저 수행되고, 이어서 디코딩된 MII 바이트 데이터 스트림에 기초하여 유휴-바이트 삽입 또는 삭제가 수행된다. 예를 들어, 프레임 시작 제어 문자가 64b/66b 코드 블록의 제5 위치에 위치하면, 데이터 스트림은 유휴-바이트 삽입 또는 삭제에 의해 4 바이트만큼 순방향으로 또는 역방향으로 이동될 수 있어서, 프레임 시작 제어 문자가 64b/66b 코드 블록의 경계와 정렬되게 한다.
원래의 데이터 스트림이 10GE 물리적 인터페이스로부터 수신될 수 있다면, 단계 S1503은 10GE 물리적 인터페이스의 수신 방향(2007)에서의 디코딩 후에 또는 그 전에 수행될 수 있다. 예를 들어, 본 발명의 이 실시예는 도 20에 도시된 데이터 처리 절차에 기초하여 구현될 수 있지만, 도 20에 도시된 예에 한정되지 않는다. 예를 들어, 데이터 처리 절차는 디코딩 단계를 포함하지 않을 수 있고, 이 경우에, S1503은 디스크램블링 후에 수행될 수 있다.
도 21은 본 발명의 실시예에 따른 송신단 디바이스(2100)의 개략적인 구조도이다. 도 21에 도시된 바와 같이, 송신단 디바이스(2100)는 10GE 물리적 인터페이스의 PMA/PMD/FEC(2101)로부터 원래의 데이터 스트림을 수신한다. 10GE 물리적 인터페이스의 PCS의 수신 방향 처리(2103)에 대해서는, 도 20에 도시된 수신 방향 처리(2007)를 참조한다. PCS의 수신 방향 처리(2103)는 물리적 회로를 사용하여 구현될 수 있거나, 논리 회로를 사용하여 구현될 수 있거나, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수 있다. 수량 마크 k 삽입(2105)은 PCS의 수신 방향 처리(2103) 동안 구현될 수 있거나, PCS의 수신 방향 처리(2103) 후에 구현될 수 있다. 선택적으로, 수량 마크 k 삽입(2105) 후에, 유휴-유닛 삽입 또는 삭제(2107)가 레이트 적응을 위해 수행될 수 있다. 그 다음, 인코딩(2109)은 수량 마크 k가 삽입되는 제1 데이터 스트림에 대해 수행되고, 제1 데이터 스트림은 플렉서블 이더넷 물리적 인터페이스(또는 인터페이스 그룹)(2111)에 의해 형성된 10GE 논리 포트(2113)를 사용하여 전송된다. 선택적으로, 수량 마크 k 삽입(2105) 및 유휴-유닛 삽입 또는 삭제(2107)는 인코딩(2109) 전에 수행될 수 있거나, 인코딩(2109) 후에 수행될 수 있다. PCS의 수신 방향 처리에서 디코딩이 없는 경우, 본 명세서에서 어떠한 인코딩도 수행될 필요가 없다.
수량 마크 k를 삽입하는 방법을 설명하기 위해 예가 아래에서 사용된다. 도 22는 본 발명의 실시예에 따른 수량 마크 삽입 방법의 흐름도이다. 도 22에 도시된 바와 같이, S2201에서, 카운터가 설정되고, 원래의 데이터 스트림으로부터 데이터 유닛이 수신될 때, 카운터의 값은 1만큼 증가된다. 데이터 유닛의 데이터 포맷은 코드 블록, 바이트 등을 포함할 수 있다. 예를 들어, 데이터 유닛의 데이터 포맷은 코드 블록이고, 원래의 데이터 스트림 내의 데이터 유닛은 시작 코드 블록 S, 종단 코드 블록 T, 코드 블록 D, 및 유휴 코드 블록(Idle)을 포함할 수 있고, AM 코드 블록 등을 추가로 포함할 수 있다. 단계 S2202에서, 현재 데이터 유닛이 시작 유닛, 예를 들어, 시작 코드 블록 S이면, S2203이 수행되어, 카운터의 현재 값 k(수량 마크 k)를 현재 데이터 유닛 내로 삽입하는데, 즉, 현재 데이터 유닛을 k를 운반하는 데이터 유닛으로 대체하고, 카운터를 0으로 리셋한다.
단계 S2202에서, 현재 데이터 유닛이 시작 유닛이 아닌 경우, 수량 마크 k가 현재 데이터 유닛 내로 삽입될 수 있는지는 카운터의 값에 따라 결정될 필요가 있다. S2204에서, 카운터의 현재 값 k가 미리 설정된 임계값보다 크거나 같으면, S2205가 수행되어, 수량 마크 k가 현재 데이터 유닛 내로 삽입될 수 있는지를 결정한다. 예를 들어, 현재 데이터 유닛이 유휴 유닛인 경우, 수량 마크 k는 현재 유휴 유닛 내로 삽입될 수 있다. 현재 데이터 유닛이 유휴 유닛이 아닌 경우, 현재 데이터 유닛에 대해 유닛 변환이 수행될 수 있고, 그 다음에 수량 마크 k가 삽입된다. 예를 들어, 현재 데이터 유닛이 로컬 장애(Local Fault, LF) 또는 원격 장애(Remote Fault, RF)와 같은 커맨드 워드를 운반할 때, LF, RF 등은 다른 유휴 코드 블록에 의해 운반되고, 수량 마크 k는 현재 데이터 유닛의 위치 내로 삽입된다. 단계 S2205에서, 수량 마크 k가 현재 데이터 유닛에 삽입될 수 없다면, 단계 S2206이 수행되어, 절차를 종료하고, 원래의 데이터 스트림에서의 다음 데이터 유닛을 수신하고, 수량 마크 k가 다음 데이터 유닛 내로 삽입될 수 있는지를 결정한다. 단계 S2204에서, 카운터의 현재 값 k가 임계값보다 작으면, S2206이 수행되어, 원래의 데이터 스트림의 다음 데이터 유닛을 계속 수신하기 위해 절차를 종료한다.
카운터의 값의 임계값 설정에 대해서는, 수량 마크 k를 운반하는 비트 길이를 참조한다. 더 높은 비트 길이는 더 큰 임계값이 설정될 수 있음을 나타낸다.
수량 마크 k는 현재 데이터 유닛이 미리 설정된 포맷을 갖는 유닛으로 대체된 후에 삽입될 수 있다. 대안적으로, 수량 마크 k는 현재 데이터 유닛이 미리 설정된 포맷을 갖는 유닛으로 대체되기 전에 삽입될 수 있다. 수량 마크 k는 현재 데이터 유닛의 중복 필드 또는 유휴 필드에 직접 삽입될 수 있다. 수량 마크 k를 데이터 유닛 내로 삽입하는 방법에 대해서는, 유휴 유닛들의 수량을 마킹하는 전술한 원리를 참조한다. 상세들은 본 명세서에서 설명되지 않는다.
본 발명의 이 실시예에서, 송신단 디바이스는 원래의 데이터 스트림 내로 수량 마크 k를 추가하고, 수량 마크 k는 원래의 데이터 스트림 내의 데이터 유닛들 또는 유휴 유닛들의 수량을 식별하기 위해 사용된다. 이러한 방식으로, 수신단 디바이스는 수량 마크 k에 따라 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
도 23은 본 발명의 실시예에 따른 서비스를 수신하기 위한 방법의 예시적인 흐름도이다. 도 23에 도시된 바와 같이, 이 방법은 플렉서블 이더넷에서 수신단 디바이스에 의해 실행될 수 있고, 다음의 단계들을 포함한다.
S2301. 수신단 디바이스는 제1 데이터 스트림을 수신한다.
제1 데이터 스트림이 수신단 디바이스에 도달하기 전에, 중간 디바이스와 같은 다른 디바이스는 유휴-유닛 삽입 또는 삭제를 수행하여 라인 상의 레이트들 간의 차이를 적응시킬 수 있다. 본 발명의 이 실시예에서, 제1 데이터 스트림의 데이터 포맷은 원래의 데이터 스트림의 것과 동일할 수 있거나, 원래의 데이터 스트림의 것과 상이할 수 있다. 예를 들어, 원래의 데이터 스트림 및 제1 데이터 스트림 둘 다는 인코딩이 수행되는 데이터 스트림들이다. 대안적으로, 원래의 데이터 스트림은 인코딩이 수행되지 않는 데이터 스트림이고, 제1 데이터 스트림은 인코딩이 수행되는 데이터 스트림이다.
S2303. 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 제1 데이터 스트림 내의 제1 데이터 유닛들의 수량을 결정하고, 여기서 k는 0보다 크거나 같다.
예를 들어, 제1 데이터 유닛은 원래의 데이터 스트림 내의 모든 데이터 유닛일 수 있거나, 원래의 데이터 스트림 내의 유휴 유닛일 수 있다. 수량 마크 k가 원래의 데이터 스트림 내의 모든 데이터 유닛의 수량을 식별하기 위해 사용될 때, k는 0보다 큰 정수일 수 있다. 수량 마크 k가 원래의 데이터 스트림 내의 유휴 유닛들의 수량을 식별하기 위해 사용될 때, k는 0보다 크거나 같은 정수일 수 있다.
S2305. 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하고, 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량은 k와 동일하다.
본 발명의 이 실시예에서, 플렉서블 이더넷에 의해 지니게 되는 40GE 서비스 및 10GE 서비스는 설명을 위한 예로서 주로 사용된다. 100GE 서비스 또는 오버(over) 100GE 서비스의 처리 절차는 40GE 서비스의 처리 절차와 유사하고, 25GE 서비스의 처리 절차는 10GE 서비스의 처리 절차와 유사하다.
40GE 서비스
본 발명의 이 실시예는 도 16에 도시된 데이터 처리 절차에 기초하여 구현될 수 있지만, 도 16에 도시된 예에 제한되지 않는다. 예를 들어, 데이터 처리 절차는 AM 삽입 단계를 포함하지 않을 수 있다. 제1 데이터 스트림이 40GE 논리 인터페이스로부터 수신될 수 있다면, 단계들 S2303 및 S2305는 40GE 물리적 인터페이스의 전송 방향 처리(1605)에서의 스크램블링 전에 수행될 수 있거나, 또는 인코딩 전에 또는 후에 수행될 수 있다.
도 24는 본 발명의 실시예에 따른 수신단 디바이스(2400)의 개략적인 구조도이다. 도 24에 도시된 바와 같이, 수신단 디바이스(2400)는 플렉서블 이더넷 물리적 인터페이스(인터페이스 그룹)(2401)에 의해 형성된 40GE 논리 포트(2403)를 사용하여 제1 데이터 스트림을 수신하고, 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하고, 그 후 40GE 물리적 인터페이스의 PMA/PMD/FEC(2409)를 사용하여 고객 디바이스에 복구된 원래의 데이터 스트림을 전송할 수 있다. 40GE 물리적 인터페이스의 PCS의 전송 방향 처리(2411)에 대해서는, 도 16에 도시된 전송 방향 처리(1605)를 참조한다. PCS의 전송 방향 처리(2411)는 물리적 회로를 사용하여 구현될 수 있거나, 논리 회로를 사용하여 구현될 수 있거나, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수 있다. 수량 마크 k 추출(2405) 및 원래의 데이터 복구(2407)는 PCS의 전송 방향 처리(2411) 동안 구현될 수 있거나, 40GE 논리 포트(2403)에서 구현될 수 있거나, 독립적으로 구현될 수 있다.
10GE 서비스
본 발명의 이 실시예는 도 20에 도시된 데이터 처리 절차에 기초하여 구현될 수 있지만, 도 20에 도시된 예에 제한되지 않는다. 예를 들어, 데이터 처리 절차는 인코딩 단계를 포함하지 않을 수 있다. 원래의 데이터 스트림이 10GE 논리 포트로부터 수신될 수 있는 경우, 단계들 S2303 및 S2305는 10GE 물리적 인터페이스의 전송 방향 처리(2005)에서의 인코딩 후 또는 전에 수행될 수 있다.
도 25는 본 발명의 실시예에 따른 수신단 디바이스(2500)의 개략적인 구조도이다. 도 25에 도시된 바와 같이, 수신단 디바이스(2500)는 플렉서블 이더넷 물리적 인터페이스(인터페이스 그룹)(2501)에 의해 형성된 10GE 논리 포트(2503)를 사용하여 제1 데이터 스트림을 수신하고, 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하고, 그 후 10GE 물리적 인터페이스의 PMA/PMD/FEC(2511)를 사용하여 고객 디바이스에 복구된 원래의 데이터 스트림을 전송할 수 있다. 10GE 물리적 인터페이스의 PCS의 전송 방향 처리(2513)에 대해서는, 도 20에 도시된 전송 방향 처리(2005)를 참조한다. PCS의 전송 방향 처리(2513)는 물리적 회로를 사용하여 구현될 수 있거나, 논리 회로를 사용하여 구현될 수 있거나, 하드웨어, 소프트웨어, 또는 하드웨어와 소프트웨어의 조합을 사용하여 구현될 수 있다. 수량 마크 k 추출(2507) 및 원래의 데이터 복구(2509)는 PCS의 전송 방향 처리(2513) 동안 구현될 수 있거나, 10GE 논리 포트(2503)에서 구현될 수 있거나, 독립적으로 구현될 수 있다. 선택적으로, 수량 마크 k 추출(2507) 및 원래의 데이터 복구(2509)는 디코딩(2505) 후에 수행될 수 있거나, 디코딩(2505) 전에 수행될 수 있다.
도 26은 본 발명의 실시예에 따른 수량 마크 추출 방법의 흐름도이다. 도 26에 도시된 바와 같이, S2601에서, 카운터가 설정되고, 제1 데이터 스트림으로부터 데이터 유닛이 수신될 때, 카운터의 값은 1만큼 증가된다. 데이터 유닛의 데이터 포맷은 코드 블록, 바이트 등을 포함할 수 있다. 예를 들어, 데이터 유닛의 데이터 포맷은 코드 블록이고, 제1 데이터 스트림 내의 데이터 유닛은 시작 코드 블록 S, 종단 코드 블록 T, 코드 블록 D, 및 유휴 코드 블록(Idle) 등을 포함할 수 있다. S2602에서, 현재 데이터 유닛이 수량 마크 k를 운반하는 경우, S2603이 수행되어, 수량 마크 k가 카운터의 현재 값 kn과 동일한지를 결정한다. S2604에서, kn<k인 경우, (k-kn)개의 유휴 유닛이 현재 데이터 유닛 전에 삽입된다. S2605에서, kn>k인 경우, (kn-k)개의 유휴 유닛은 현재 데이터 유닛 전에 삭제된다. S2604 또는 S2605가 수행된 후에 S2606이 수행된다. kn = k인 경우, S2606이 직접 수행되어, 현재 데이터 유닛으로부터 원래의 데이터 유닛을 복구하고, 카운터를 0으로 리셋한다. 현재 데이터 유닛이 수량 마크가 삽입되기 전에 유휴 유닛이면, 현재 데이터 유닛으로부터 유휴 유닛이 복구된다. 현재 데이터 유닛이 수량 마크가 삽입되기 전의 시작 유닛이면, 시작 유닛은 현재 데이터 유닛으로부터 복구된다. S2607에서, 원래의 데이터 유닛이 복구되는 현재 데이터 유닛이 캐시 큐에 전송된다. S2608에서, 절차가 종료되어, 제1 데이터 스트림의 다음 데이터 유닛을 계속 수신한다. S2602에서, 현재 데이터 유닛이 수량 마크 k를 운반하지 않는 경우, 현재 데이터 유닛은 캐시 큐에 전송된다. S2608에서, 절차가 종료되어, 제1 데이터 스트림의 다음 데이터 유닛을 계속 수신한다. 전술한 방법 절차에 따르면, 송신단 디바이스에 의해 획득된 원래의 데이터 스트림 및 복구된 데이터 스트림은 동일한 수량의 데이터 유닛을 가지거나, 동일한 수량의 유휴 유닛을 가져서, 원래의 데이터 스트림이 복구된다.
도 27은 본 발명의 실시예에 따른 클록 주파수 복구 시스템의 개략적인 구조도이다. 도 27에 도시된 바와 같이, 송신단 디바이스(2701) 및 중간 디바이스(2703)는 레이트 적응을 구현하기 위해 유휴-유닛 삽입 또는 삭제를 수행할 수 있다. 따라서, 클록 주파수는 전송 프로세스에서 변경된다. 송신단 디바이스(2701)는 클록 주파수가 f0인 원래의 데이터 스트림을 수신하고, 클록 주파수가 f1인 제1 데이터 스트림을 전송한다. 제1 데이터 스트림은 적어도 하나의 중간 디바이스(2703)를 통과할 수 있고, 중간 디바이스(2703)는 제1 데이터 스트림의 클록 주파수를 예를 들어, f1로부터 f2로 변경할 수 있다. 수신단 디바이스(2705)는 제1 데이터 스트림의 클록 주파수 f2로부터 원래의 데이터 스트림의 클록 주파수 f0'을 복구한다. 복구된 클록 주파수 f0'은 원래의 클록 주파수 f0과 약간 상이할 수 있다. 그러나, 2개의 주파수들 사이의 차이가 허용가능한 범위 내에 있을 때, 원래의 클록 주파수가 복구되는 것으로 간주될 수 있다.
본 발명의 이 실시예에서, 수신단 디바이스(2705)가 원래의 클록 주파수를 어떻게 복구하는지가 주로 설명된다. 송신단 디바이스(2701)는 수량 마크 k를 데이터 스트림 내로 삽입하고, 수신단 디바이스(2705)는 수신된 데이터 스트림으로부터 수량 마크 k를 추출할 수 있다. 데이터를 전송 및 수신하는 프로세스에서, 특정 캐시 공간은 송신단 디바이스(2701), 중간 디바이스(2703), 및 수신단 디바이스(2705)에 대해 설정될 필요가 있다. 수신단 디바이스(2705)에서, 캐시 큐의 깊이는 수량 마크 k와 카운터의 값 kn 사이의 차이에 따라 실시간으로 조정될 수 있다. 예를 들어, k와 kn 사이의 차이가 비교적 클 때, 큐의 깊이는 비교적 크다. 도 26의 방법 절차를 참조하면, 제1 데이터 스트림에서의 데이터 유닛이 캐시 큐에 전송되고, 원래의 데이터 스트림이 복구된다. 수신단 디바이스(2705)는 큐의 평균 워터마크를 모니터링할 수 있고, 평균 워터마크가 점진적으로 증가할 때, 큐로부터 출력되는 원래의 데이터 스트림의 클록 주파수는 점진적으로 증가한다. 평균 워터마크가 점진적으로 감소할 때, 큐로부터 출력되는 원래의 데이터 스트림의 클록 주파수가 점진적으로 감소한다. 큐로부터 출력되는 원래의 데이터 스트림의 클록 주파수에, 클록 처리 회로를 사용하여 평활 필터링이 수행되어, 큐의 평균 워터마크를 안정적이고 변경되지 않게 유지할 수 있어서, 원래의 클록 주파수 f0'이 안정적으로 생성되게 한다.
본 발명의 이 실시예에서, 수신단 디바이스는 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 수량 마크 k는 원래의 데이터 스트림 내의 데이터 유닛들 또는 유휴 유닛들의 수량을 식별하기 위해 사용된다. 또한, 수신단 디바이스는 수량 마크 k에 따라 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
다른 실시예에서, 도 15 및 도 23에 도시된 실시예들은 고객 디바이스 상에서 추가로 구현될 수 있다. 100GE 서비스는 설명을 위한 예로서 사용되고, 100GE 물리적 인터페이스의 원리는 40GE 물리적 인터페이스의 원리와 유사하다. 도 28은 본 발명의 실시예에 따른 고객 디바이스의 개략적인 구조도이다. 도 28에 도시된 바와 같이, 송신단 방법은 100GE 물리적 인터페이스의 전송 방향(2801)에서의 인코딩 후에 그리고 스크램블링 전에 실행될 수 있고, 수신단 방법은 100GE 물리적 인터페이스의 수신 방향(2803)에서의 디스크램블링 후에 그리고 디코딩 전에 실행될 수 있다. 도 29는 본 발명의 실시예에 따른 다른 고객 디바이스의 개략적인 구조도이다. 도 29에 도시된 바와 같이, 송신단 방법은 100GE 물리적 인터페이스의 전송 방향(2901)에서 인코딩 전에 실행될 수 있고, 수신단 방법은 100GE 물리적 인터페이스의 수신 방향(2903)에서의 디코딩 후에 실행될 수 있다.
고객 디바이스에서 구현되는 본 발명의 실시예들에서의 기술적 해결책들은 기존의 베어러 네트워크와 효과적으로 호환가능하게 될 수 있다.
도 30은 본 발명의 실시예에 따라 서비스를 전송하기 위한 장치(3000)의 개략적인 구조도이다. 장치는 플렉서블 이더넷 디바이스, 이더넷 디바이스, OTN 디바이스, SDH 디바이스 등일 수 있다. 도 30에 도시된 바와 같이, 장치(3000)는 획득 모듈(3001), 삽입 모듈(3003), 및 전송 모듈(3005)을 포함할 수 있다. 본 발명의 이 실시예에서, 기능 모듈들은 논리 분할에 의해 획득되고, 분할 방식은 제한되지 않는다. 예를 들어, 각각의 모듈은 독립적인 회로 모듈일 수 있거나, 회로 모듈 내로 통합될 수 있다. 각각의 모듈은 칩과 같은 집적 회로를 사용하여 구현될 수 있다. 본 발명의 이 실시예에서 서비스를 전송하기 위한 장치(3000)는 도 15에 도시된 실시예에서의 방법 단계들을 수행할 수 있다.
획득 모듈(3001)은 원래의 데이터 스트림을 획득하도록 구성된다. 삽입 모듈(3003)은 제1 데이터 스트림을 생성하기 위해, 수량 마크 k를 원래의 데이터 스트림 내로 삽입하도록 구성된다. 수량 마크 k는 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같다. 전송 모듈(3005)은 제1 데이터 스트림을 전송하도록 구성된다.
삽입 모듈(3003)은 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트에서 제1 데이터 유닛들의 수량을 결정하고; 데이터 스트림의 제1 세그먼트 내의 제1 위치에 수량 마크 k를 삽입하도록 구성된다. 수량 마크 k의 값은 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량과 동일하고, 제1 위치는 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치이다.
선택적으로, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다. 선택적으로, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
삽입 모듈(3003)은 원래의 데이터 스트림 내의 시작 유닛을 식별하고, 시작 유닛의 위치를 제1 위치로서 결정하도록 구성된다.
삽입 모듈(3003)은 수량 마크 k의 임계값을 설정하고; 데이터 스트림의 제1 세그먼트의 길이가 임계값보다 크거나 같을 때, 데이터 스트림의 제1 세그먼트 내의 제1 유휴 유닛을 식별하고; 제1 유휴 유닛의 위치를 제1 위치로서 결정하도록 구성된다.
인코딩 처리가 제1 데이터 유닛에 대해 수행되었고, 또는 인코딩 처리가 제1 데이터 유닛에 대해 수행되지 않는다.
장치(3000)는 제1 데이터 스트림 내의 유휴 유닛들의 수량을 증가 및/또는 감소시키도록 구성되는 삽입 또는 삭제 모듈을 추가로 포함한다.
본 발명의 이 실시예에서, 서비스를 전송하기 위한 장치는 원래의 데이터 스트림 내로 수량 마크 k를 추가하고, 수량 마크 k는 원래의 데이터 스트림 내의 데이터 유닛들 또는 유휴 유닛들의 수량을 식별하기 위해 사용된다. 이러한 방식으로, 서비스를 수신하기 위한 장치는 수량 마크 k에 따라 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
도 31은 본 발명의 실시예에 따른 서비스를 수신하기 위한 장치(3100)의 개략적인 구조도이다. 장치는 플렉서블 이더넷 디바이스, 이더넷 디바이스, OTN 디바이스, SDH 디바이스 등일 수 있다. 도 31에 도시된 바와 같이, 장치는 수신 모듈(3101), 추출 모듈(3103), 및 복구 모듈(3105)을 포함할 수 있다. 본 발명의 이 실시예에서, 기능 모듈들은 논리 분할에 의해 획득되고, 분할 방식은 제한되지 않는다. 예를 들어, 각각의 모듈은 독립적인 회로 모듈일 수 있거나, 회로 모듈 내로 통합될 수 있다. 각각의 모듈은 칩과 같은 집적 회로를 사용하여 구현될 수 있다. 본 발명의 이 실시예에서 서비스를 수신하기 위한 장치(3100)는 도 23에 도시된 실시예에서의 방법 단계들을 수행할 수 있다.
수신 모듈(3101)은 제1 데이터 스트림을 수신하도록 구성된다. 추출 모듈(3103)은: 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 제1 데이터 스트림에서의 제1 데이터 유닛들의 수량을 결정하도록 구성되며, 여기서 k는 0보다 크거나 같다. 복구 모듈(3105)은 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하도록 구성된다. 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량은 k와 같다.
추출 모듈(3103)은: 제1 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 데이터 스트림의 제1 세그먼트에서의 제1 위치를 결정하고, 제1 위치로부터 수량 마크 k를 추출하도록 구성된다. 제1 위치는 수량 마크 k를 전달하기 위해 사용될 수 있는 데이터 유닛의 위치이다.
선택적으로, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수이다. 선택적으로, 제1 데이터 유닛은 데이터 스트림의 제1 세그먼트에서의 유휴 유닛이고, k는 0보다 크거나 같은 정수이다.
복구 모듈(3105)은 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량 m을 결정하고, m과 k 사이의 차이에 따라 데이터 스트림의 제1 세그먼트에서의 제1 데이터 유닛들의 수량 m을 조정하여, m이 k와 동일하도록 구성된다.
복구 모듈(3105)은 m이 k보다 클 때, 데이터 스트림의 제1 세그먼트로부터 (m-k)개의 유휴 유닛을 삭제하고; 또는 m이 k보다 작을 때, 데이터 스트림의 제1 세그먼트 내로 (k-m)개의 유휴 유닛을 삽입하도록 구성된다.
장치(3100)는 원래의 데이터 스트림의 클록 주파수를 복구하도록 구성되는 클록 모듈을 추가로 포함한다.
본 발명의 이 실시예에서, 서비스를 수신하기 위한 장치는 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 수량 마크 k는 원래의 데이터 스트림 내의 데이터 유닛들 또는 유휴 유닛들의 수량을 식별하기 위해 사용된다. 또한, 서비스를 수신하기 위한 장치는 수량 마크 k에 따라 원래의 데이터 스트림을 복구하여, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
도 32는 본 발명의 실시예에 따른 네트워크 시스템의 개략적인 구조도이다. 네트워크 시스템은 플렉서블 이더넷, 이더넷, OTN 네트워크, SDH 네트워크 등일 수 있다. 도 32에 도시된 바와 같이, 네트워크 시스템은 적어도 2개의 네트워크 디바이스, 예를 들어, 네트워크 디바이스(3201) 및 네트워크 디바이스(3203)를 포함할 수 있다. 각각의 네트워크 디바이스는 전송 네트워크 디바이스 또는 수신 네트워크 디바이스일 수 있고, 도 30 및/또는 도 31에 도시된 구조를 가질 수 있다.
도 33은 본 발명의 실시예에 따른 네트워크 디바이스의 개략적인 구조도이다. 네트워크 디바이스는 플렉서블 이더넷 디바이스, 이더넷 디바이스, OTN 디바이스, SDH 디바이스 등일 수 있다. 도 33에 도시된 바와 같이, 네트워크 디바이스(3300)는 프로세서(3301), 메모리(3302), 적어도 하나의 네트워크 인터페이스(예를 들어, 네트워크 인터페이스(3303) 및 네트워크 인터페이스(3304)), 및 프로세싱 칩(3305)을 포함할 수 있다.
프로세서(3301)는 범용 중앙 처리 유닛(Central Processing Unit, CPU), 마이크로프로세서, 네트워크 프로세서(Network Processing Unit, NPU), 주문형 집적 회로(Application Specific Integrated Circuit, ASIC), 또는 관련 프로그램을 실행하기 위한 적어도 하나의 집적 회로를 사용하여, 본 발명의 실시예들에서 제공되는 기술적 해결책들을 구현할 수 있다.
메모리(3302)는 판독 전용 메모리(Read Only Memory, ROM), 정적 저장 디바이스, 동적 저장 디바이스, 또는 랜덤 액세스 메모리(Random Access Memory, RAM)일 수 있다. 메모리(3302)는 운영 체제 및 다른 애플리케이션 프로그램을 저장할 수 있다. 본 발명의 실시예들에서 제공되는 기술적 해결책들이 소프트웨어 또는 펌웨어를 사용하여 구현될 때, 본 발명의 실시예들에서 제공되는 기술적 해결책들을 구현하기 위해 사용되는 프로그램 코드는 메모리(3302)에 저장되고, 프로세서(3301)에 의해 실행된다.
네트워크 인터페이스(3303) 및 네트워크 인터페이스(3304) 각각은 네트워크 디바이스(3300)와 다른 디바이스 또는 통신 네트워크 사이의 통신을 구현하기 위해 송수신기를 포함하지만 이에 한정되지 않는 송수신기 장치를 사용한다. 예를 들어, 네트워크 인터페이스(3303) 및 네트워크 인터페이스(3304) 각각은 전송 기능 또는 수신 기능을 가질 수 있거나, 전송 기능 및 수신 기능 둘 다를 가질 수 있다. 여기서, 네트워크 인터페이스(3303) 및 네트워크 인터페이스(3304) 각각은 논리 포트(예를 들어, 여러 타임슬롯에 의해 형성된 논리 포트)일 수 있거나, 물리적 인터페이스(예를 들어, 100G 플렉서블 이더넷 물리적 인터페이스)일 수 있다.
프로세싱 칩(3305)은 ASIC, 필드-프로그램가능 게이트 어레이(Field-Programmable Gate Array, FPGA) 등을 사용하여 구현될 수 있다. 프로세싱 칩(3305)은 본 발명에서의 기술적 해결책들을 구현하기 위한 전용 칩일 수 있거나, 본 발명에서의 기술적 해결책들의 기능들을 갖는 범용 칩일 수 있다.
일례에서, 네트워크 디바이스(3300)는 네트워크 인터페이스(3303) 또는 네트워크 인터페이스(3304)를 사용하여 원래의 데이터 스트림을 획득한다. 네트워크 디바이스(3300)는, 프로세서(3301)를 사용하여, 메모리(3302)에 저장된 코드를 실행하거나, 프로세싱 칩(3305)은 프로세싱 칩(3305)에 저장된 코드를 실행하여, 다음의 단계들을 수행한다: 제1 데이터 스트림을 생성하기 위해, 수량 마크 k를 원래의 데이터 스트림 내로 삽입하는 단계- 여기서 수량 마크 k는 제1 원래의 데이터 스트림에서의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같음 -; 네트워크 인터페이스(3304) 또는 네트워크 인터페이스(3303)를 사용하여 제1 데이터 스트림을 전송하는 단계.
다른 예에서, 네트워크 디바이스(3300)는 네트워크 인터페이스(3303) 또는 네트워크 인터페이스(3304)를 사용하여 제1 데이터 스트림을 수신한다. 네트워크 디바이스(3300)는, 프로세서(3301)를 사용하여, 메모리(3302)에 저장된 코드를 실행하거나, 프로세싱 칩(3305)은 프로세싱 칩(3305)에 저장된 코드를 실행하여, 다음의 단계들을 수행한다: 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 제1 데이터 스트림에서의 제1 데이터 유닛들의 수량을 결정하는 단계- 여기서 k는 0보다 크거나 같음 -; 및 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하는 단계- 원래의 데이터 스트림에서의 제1 데이터 유닛들의 수량은 k와 동일함 -.
구체적으로, 본 발명의 임의의 실시예에서의 기술적 해결책들은 도 33에 도시된 네트워크 디바이스(3300)를 사용하여 구현될 수 있다. 예를 들어, 도 30의 장치(3000) 및 도 31의 장치(3100)는 네트워크 디바이스(3300)의 구조 및 해결책들을 사용하여 구현될 수 있다. 도 33에 도시된 네트워크 디바이스(3300)에 대해, 프로세서(3301), 메모리(3302), 네트워크 인터페이스(3303) 및 네트워크 인터페이스(3304), 및 프로세싱 칩(3305)만이 도시되어 있지만, 특정 구현 프로세스에서, 본 기술분야의 통상의 기술자는 네트워크 디바이스(3300)가 정상적인 실행을 구현하기 위해 요구되는 다른 컴포넌트를 추가로 포함한다는 것을 이해해야 한다. 또한, 본 기술분야의 통상의 기술자는 특정 요건에 따라, 네트워크 디바이스(3300)가 다른 추가 기능을 구현하기 위한 하드웨어 컴포넌트를 추가로 포함할 수 있다는 것을 이해해야 한다. 예를 들어, 네트워크 디바이스(3300)는 전원, 팬, 클록 유닛, 제어 유닛 등을 포함할 수 있다. 또한, 본 기술분야의 통상의 기술자는 네트워크 디바이스(3300)가 본 발명의 실시예들을 구현하기 위해 요구되는 컴포넌트만을 또한 포함할 수 있고, 도 33에 도시된 모든 컴포넌트를 포함할 필요가 없다는 것을 이해해야 한다.
본 발명의 이 실시예에서, 송신단 네트워크 디바이스는 원래의 데이터 스트림 내로 수량 마크 k를 추가하고, 수량 마크 k는 원래의 데이터 스트림 내의 데이터 유닛들 또는 유휴 유닛들의 수량을 식별하기 위해 사용된다. 이러한 방식으로, 수신단 네트워크 디바이스는, 수량 마크 k에 따라, 원래의 데이터 스트림의 데이터 유닛들 또는 유휴 유닛들의 수량을 결정하여, 원래의 데이터 스트림을 복구하고, 원래의 데이터 스트림의 클록 주파수 및 시간 위상 정보를 복구할 수 있어서, 서비스의 클록 주파수 및 시간 위상 정보가 투명하게 전송되게 한다.
전술한 설명들은 본 발명의 단지 특정 구현들일 뿐이며, 본 발명의 보호 범위를 제한하도록 의도되지 않는다. 본 발명에 개시된 기술 범위 내에서 본 기술분야의 통상의 기술자에 의해 용이하게 안출되는 임의의 변형 또는 대체는 본 발명의 보호 범위 내에 속할 것이다. 따라서, 본 발명의 보호 범위는 청구항들의 보호 범위에 따를 것이다.

Claims (31)

  1. 서비스를 전송하기 위한 방법으로서,
    송신단 디바이스에 의해, 원래의 데이터 스트림을 획득하는 단계;
    제1 데이터 스트림을 생성하기 위해 상기 원래의 데이터 스트림 내로 수량 마크 k를 삽입하는 단계- 상기 수량 마크 k는 상기 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같고, 상기 원래의 데이터 스트림 내의 데이터 유닛은 유휴 유닛 또는 비-유휴 유닛이고, 상기 유휴 유닛은 상기 송신단 디바이스와 수신단 디바이스 사이에 삽입 가능하고 삭제 가능함 -; 및
    상기 제1 데이터 스트림을 전송하는 단계를 포함하는, 방법.
  2. 제1항에 있어서,
    상기 원래의 데이터 스트림 내로 수량 마크 k를 삽입하는 단계는:
    상기 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량을 결정하는 것; 및
    상기 데이터 스트림의 제1 세그먼트 내의 제1 위치에 상기 수량 마크 k를 삽입하는 것- 상기 수량 마크 k의 값은 상기 데이터 스트림의 제1 세그먼트 내의 상기 제1 데이터 유닛들의 수량과 동일하고, 상기 제1 위치는 상기 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치임 -을 포함하는, 방법.
  3. 제2항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수인, 방법.
  4. 제2항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 유휴 유닛이고, k는 0보다 크거나 같은 정수인, 방법.
  5. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하는 것은:
    상기 원래의 데이터 스트림 내의 시작 유닛을 식별하는 것; 및
    상기 시작 유닛의 위치를 상기 제1 위치로서 결정하는 것을 포함하는, 방법.
  6. 제2항 내지 제4항 중 어느 한 항에 있어서,
    상기 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하는 것은:
    상기 수량 마크 k의 임계값을 설정하는 것;
    상기 데이터 스트림의 제1 세그먼트의 길이가 상기 임계값보다 크거나 같을 때, 상기 데이터 스트림의 제1 세그먼트 내의 제1 유휴 유닛을 식별하는 것; 및
    상기 제1 유휴 유닛의 위치를 상기 제1 위치로서 결정하는 것을 포함하는, 방법.
  7. 제1항에 있어서,
    상기 제1 데이터 유닛에 대해 인코딩 처리가 수행되거나, 상기 제1 데이터 유닛에 대해 인코딩 처리가 수행되지 않는, 방법.
  8. 제1항에 있어서,
    상기 제1 데이터 스트림이 생성된 후에, 상기 방법은:
    상기 제1 데이터 스트림 내의 유휴 유닛들의 수량을 증가 및/또는 감소시키는 단계를 추가로 포함하는, 방법.
  9. 서비스를 수신하기 위한 방법으로서,
    수신단 디바이스에 의해, 제1 데이터 스트림을 수신하는 단계;
    상기 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 상기 제1 데이터 스트림 내의 제1 데이터 유닛들의 수량을 결정하는 단계- k는 0보다 크거나 같고, 상기 제1 데이터 스트림 내의 데이터 유닛은 유휴 유닛 또는 비-유휴 유닛이고, 상기 유휴 유닛은 송신단 디바이스와 상기 수신단 디바이스 사이에 삽입 가능하고 삭제 가능함 -; 및
    상기 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하는 단계- 상기 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량은 k와 동일함 -를 포함하는, 방법.
  10. 제9항에 있어서,
    상기 제1 데이터 스트림으로부터 수량 마크 k를 추출하는 것은:
    상기 제1 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 상기 데이터 스트림의 제1 세그먼트 내의 제1 위치를 결정하고, 상기 제1 위치로부터 상기 수량 마크 k를 추출하는 것- 상기 제1 위치는 상기 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치임 -을 포함하는, 방법.
  11. 제10항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수인, 방법.
  12. 제10항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 유휴 유닛이고, k는 0보다 크거나 같은 정수인, 방법.
  13. 제10항 내지 제12항 중 어느 한 항에 있어서,
    상기 제1 데이터 스트림으로부터 상기 원래의 데이터 스트림을 복구하는 단계는:
    상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량 m을 결정하고, m과 k 사이의 차이에 따라 상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 상기 수량 m을 조정하여, m이 k와 동일하게 하는 것을 포함하는, 방법.
  14. 제13항에 있어서,
    m과 k 사이의 차이에 따라 상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 상기 수량 m을 조정하는 것은:
    m이 k보다 클 때, 상기 데이터 스트림의 제1 세그먼트로부터 (m-k)개의 유휴 유닛을 삭제하는 것; 또는 m이 k보다 작을 때, 상기 데이터 스트림의 제1 세그먼트 내로 (k-m)개의 유휴 유닛을 삽입하는 것을 포함하는, 방법.
  15. 제9항에 있어서,
    상기 방법은:
    상기 원래의 데이터 스트림의 클록 주파수를 복구하는 단계를 추가로 포함하는, 방법.
  16. 서비스를 전송하기 위한 장치로서,
    원래의 데이터 스트림을 획득하도록 구성되는 획득 모듈;
    상기 원래의 데이터 스트림 내로 수량 마크 k를 삽입하여, 제1 데이터 스트림을 생성하도록 구성되는 삽입 모듈- 상기 수량 마크 k는 상기 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량을 식별하기 위해 사용되고, k는 0보다 크거나 같고, 상기 원래의 데이터 스트림 내의 데이터 유닛은 유휴 유닛 또는 비-유휴 유닛이고, 상기 유휴 유닛은 상기 서비스를 전송하기 위한 장치와 서비스를 수신하기 위한 장치 사이에 삽입 가능하고 삭제 가능함 -; 및
    상기 제1 데이터 스트림을 전송하도록 구성되는 전송 모듈을 포함하는, 장치.
  17. 제16항에 있어서,
    상기 삽입 모듈은:
    상기 원래의 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량을 결정하고;
    상기 데이터 스트림의 제1 세그먼트 내의 제1 위치에 상기 수량 마크 k를 삽입하도록 구성되고, 상기 수량 마크 k의 값은 상기 데이터 스트림의 제1 세그먼트 내의 상기 제1 데이터 유닛들의 수량과 동일하고, 상기 제1 위치는 상기 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치인, 장치.
  18. 제17항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수인, 장치.
  19. 제17항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 유휴 유닛이고, k는 0보다 크거나 같은 정수인, 장치.
  20. 제17항 내지 제19항 중 어느 한 항에 있어서,
    상기 삽입 모듈은:
    상기 원래의 데이터 스트림 내의 시작 유닛을 식별하고;
    상기 시작 유닛의 위치를 상기 제1 위치로서 결정하도록 구성되는, 장치.
  21. 제17항 내지 제19항 중 어느 한 항에 있어서,
    상기 삽입 모듈은:
    상기 수량 마크 k의 임계값을 설정하고,
    상기 데이터 스트림의 제1 세그먼트의 길이가 상기 임계값보다 크거나 같을 때, 상기 데이터 스트림의 제1 세그먼트 내의 제1 유휴 유닛을 식별하고;
    상기 제1 유휴 유닛의 위치를 상기 제1 위치로서 결정하도록 구성되는, 장치.
  22. 제16항에 있어서,
    상기 제1 데이터 유닛에 대해 인코딩 처리가 수행되거나, 상기 제1 데이터 유닛에 대해 인코딩 처리가 수행되지 않는, 장치.
  23. 제16항에 있어서,
    상기 제1 데이터 스트림 내의 유휴 유닛들의 수량을 증가 및/또는 감소시키도록 구성되는 삽입 또는 삭제 모듈을 추가로 포함하는, 장치.
  24. 서비스를 수신하기 위한 장치로서,
    제1 데이터 스트림을 수신하도록 구성되는 수신 모듈;
    상기 제1 데이터 스트림으로부터 수량 마크 k를 추출하고, 상기 제1 데이터 스트림 내의 제1 데이터 유닛들의 수량을 결정하도록 구성되는 추출 모듈- k는 0보다 크거나 같고, 상기 제1 데이터 스트림 내의 데이터 유닛은 유휴 유닛 또는 비-유휴 유닛이고, 상기 유휴 유닛은 서비스를 전송하기 위한 장치와 상기 서비스를 수신하기 위한 장치 사이에 삽입 가능하고 삭제 가능함 -; 및
    상기 제1 데이터 스트림으로부터 원래의 데이터 스트림을 복구하도록 구성되는 복구 모듈- 상기 원래의 데이터 스트림 내의 제1 데이터 유닛들의 수량은 k와 동일함 -을 포함하는, 장치.
  25. 제24항에 있어서,
    상기 추출 모듈은:
    상기 제1 데이터 스트림으로부터 데이터 스트림의 제1 세그먼트를 획득하고, 상기 데이터 스트림의 제1 세그먼트 내의 제1 위치를 결정하고, 상기 제1 위치로부터 상기 수량 마크 k를 추출하도록 구성되며, 상기 제1 위치는 상기 수량 마크 k를 운반하기 위해 사용될 수 있는 데이터 유닛의 위치인, 장치.
  26. 제25항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 모든 데이터 유닛을 포함하고, k는 0보다 큰 정수인, 장치.
  27. 제25항에 있어서,
    상기 제1 데이터 유닛은 상기 데이터 스트림의 제1 세그먼트 내의 유휴 유닛이고, k는 0보다 크거나 같은 정수인, 장치.
  28. 제25항 내지 제27항 중 어느 한 항에 있어서,
    상기 복구 모듈은:
    상기 데이터 스트림의 제1 세그먼트 내의 제1 데이터 유닛들의 수량 m을 결정하고, m과 k 사이의 차이에 따라 상기 데이터 스트림의 제1 세그먼트 내의 상기 제1 데이터 유닛들의 수량 m을 조정하여, m이 k와 동일하게 하도록 구성되는, 장치.
  29. 제28항에 있어서,
    상기 복구 모듈은:
    m이 k보다 클 때, 상기 데이터 스트림의 제1 세그먼트로부터 (m-k)개의 유휴 유닛을 삭제하도록; 또는 m이 k보다 작을 때, 상기 데이터 스트림의 제1 세그먼트 내로 (k-m)개의 유휴 유닛을 삽입하도록 구성되는, 장치.
  30. 제24항에 있어서,
    상기 원래의 데이터 스트림의 클록 주파수를 복구하도록 구성되는 클록 모듈을 추가로 포함하는, 장치.
  31. 삭제
KR1020197008011A 2016-08-25 2017-08-22 서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템 KR102209296B1 (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
CN201610723799.6 2016-08-25
CN201610723799.6A CN107786320B (zh) 2016-08-25 2016-08-25 一种发送和接收业务的方法、装置和网络系统
PCT/CN2017/098490 WO2018036485A1 (zh) 2016-08-25 2017-08-22 一种发送和接收业务的方法、装置和网络系统

Publications (2)

Publication Number Publication Date
KR20190039300A KR20190039300A (ko) 2019-04-10
KR102209296B1 true KR102209296B1 (ko) 2021-01-29

Family

ID=61246435

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020197008011A KR102209296B1 (ko) 2016-08-25 2017-08-22 서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템

Country Status (6)

Country Link
US (2) US10715306B2 (ko)
EP (1) EP3496344B1 (ko)
JP (1) JP6867473B2 (ko)
KR (1) KR102209296B1 (ko)
CN (1) CN107786320B (ko)
WO (1) WO2018036485A1 (ko)

Families Citing this family (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20200352972A1 (en) * 2017-09-06 2020-11-12 Nantcell, Inc. Aldoxorubicin combination treatments and methods
CN109962762B (zh) * 2017-12-25 2020-06-16 华为技术有限公司 一种数据传输方法、发送装置及接收装置
CN110417542B (zh) * 2018-04-26 2022-03-18 中兴通讯股份有限公司 一种传输客户业务的方法、装置和系统
CN110830153B (zh) 2018-08-07 2021-04-09 华为技术有限公司 接收码块流的方法、发送码块流的方法和通信装置
CN111147181B (zh) * 2018-11-02 2022-12-09 中兴通讯股份有限公司 业务发送方法、接收方法、装置及系统、存储介质
CN112398756B (zh) * 2019-08-13 2024-05-17 华为技术有限公司 用于传输业务数据的方法和装置
CN112751645A (zh) * 2019-10-29 2021-05-04 华为技术有限公司 一种通信方法、设备及存储介质
CN113078980A (zh) * 2019-12-18 2021-07-06 华为技术有限公司 一种数据传输的方法以及装置
CN113972989B (zh) * 2020-07-06 2023-09-15 宇龙计算机通信科技(深圳)有限公司 数据校验方法及存储介质、电子设备
US11483087B2 (en) * 2020-08-07 2022-10-25 Hyannis Port Research, Inc. Systems and methods for clock synchronization using special physical layer clock sync symbols
CN117294579A (zh) * 2022-06-17 2023-12-26 华为技术有限公司 数据处理装置、主备切换方法以及系统
WO2024067959A1 (en) * 2022-09-28 2024-04-04 Telefonaktiebolaget Lm Ericsson (Publ) Methods and apparatus of communicating in a physical coding sublayer

Family Cites Families (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5384774A (en) * 1993-01-11 1995-01-24 At&T Corp. Asynchronous transfer mode (ATM) payload synchronizer
JP3169335B2 (ja) 1996-03-06 2001-05-21 三菱電機株式会社 回線接続装置
JPH11298488A (ja) * 1998-04-13 1999-10-29 Oki Electric Ind Co Ltd パケット伝送方法及び装置、並びにネットワーク
DE10241718B4 (de) * 2002-09-09 2011-03-31 Texas Instruments Deutschland Gmbh Vorrichtung und Verfahren zum Aufbereiten von Datenzellen
JP3875948B2 (ja) 2002-11-29 2007-01-31 日本電信電話株式会社 フレーム信号処理方法及び中継装置
JP4110964B2 (ja) * 2002-12-25 2008-07-02 日本電気株式会社 伝送システムおよびデータ転送方法
US7512150B2 (en) 2003-03-24 2009-03-31 Applied Micro Circuits Corporation 10 GbE LAN signal mapping to OTU2 signal
KR100643287B1 (ko) * 2004-11-19 2006-11-10 삼성전자주식회사 플래시 메모리의 데이터 처리 장치 및 방법
CN100486252C (zh) * 2005-10-18 2009-05-06 中兴通讯股份有限公司 支持多载波高速下行分组接入的数据并行调度系统及方法
US7809017B2 (en) * 2006-09-21 2010-10-05 Nortel Networks Limited Multi-rate transparent MUX for optical communications networks
CN101123584B (zh) * 2007-05-21 2010-11-10 华为技术有限公司 一种测量ip链路丢包情况的方法及设备
JP4973729B2 (ja) * 2007-06-07 2012-07-11 富士通株式会社 動画像類似判定装置、および動画像類似判定方法
CN101335750B (zh) * 2007-06-29 2012-08-08 华为技术有限公司 将以太网编码块映射到光传输网络传输的方法及装置
CN101335751A (zh) * 2007-06-29 2008-12-31 华为技术有限公司 将以太网编码块映射到光传输网络传输的方法及装置
JP4885820B2 (ja) 2007-10-24 2012-02-29 日本電信電話株式会社 ディジタル伝送装置およびディジタル伝送プログラム
EP2073459A1 (en) 2007-12-17 2009-06-24 Alcatel-Lucent Deutschland AG Transmission via a burst or frame switched network with timing preservation of the transmitted client packets
WO2009115481A1 (en) 2008-03-20 2009-09-24 Nokia Siemens Networks Oy Method and device for data processing via a gigabit ethernet optical transmission link
JP4878648B2 (ja) 2010-03-12 2012-02-15 日本電信電話株式会社 クライアント信号収容多重装置及び方法
CN102761489B (zh) * 2012-07-17 2015-07-22 中国科学技术大学苏州研究院 基于流水线模式的数据包零拷贝的核间通信方法
EP3089423B1 (en) * 2014-01-14 2018-07-18 Huawei Technologies Co., Ltd. Ethernet signal transmission method, scheduling method and device and system thereof
CN103916217B (zh) * 2014-03-25 2017-06-13 烽火通信科技股份有限公司 Xlgmii接口多通道降频dic机制的实现方法及装置
CN111147185A (zh) * 2015-01-22 2020-05-12 华为技术有限公司 一种利用以太网信道传输业务信号的方法及通信设备

Also Published As

Publication number Publication date
US10715306B2 (en) 2020-07-14
JP2019531642A (ja) 2019-10-31
WO2018036485A1 (zh) 2018-03-01
EP3496344A1 (en) 2019-06-12
EP3496344A4 (en) 2019-07-03
US20190190690A1 (en) 2019-06-20
CN107786320B (zh) 2021-06-22
EP3496344B1 (en) 2023-06-21
CN107786320A (zh) 2018-03-09
US11038664B2 (en) 2021-06-15
KR20190039300A (ko) 2019-04-10
JP6867473B2 (ja) 2021-04-28
US20200336283A1 (en) 2020-10-22

Similar Documents

Publication Publication Date Title
KR102209296B1 (ko) 서비스를 전송 및 수신하기 위한 방법들 및 장치들, 및 네트워크 시스템
US9954644B2 (en) Ethernet data processing method, physical layer chip and Ethernet equipment
US11165698B2 (en) Method for transmitting service signal by using ethernet channel and communications device
US11223438B2 (en) Service transmission method, network device, and network system
JP6868095B2 (ja) サービス送出方法及び装置、サービス受信方法及び装置、並びにネットワークシステム
JP6736701B2 (ja) サービス送信方法及び装置、サービス受信方法及び装置、並びにネットワーク・システム
KR101363541B1 (ko) 데이터를 부호화 및 복호화하기 위한 방법 및 장치
US11108485B2 (en) Clock synchronization method and apparatus
WO2013125621A1 (ja) マルチレーン伝送装置及びマルチレーン伝送方法
EP3832914A1 (en) Oam message transmission method, sending device, receiving device, and readable storage device
WO2011022886A1 (zh) 一种改善信号质量的方法、装置及设备
US8160057B2 (en) Multi-channel optical transport network training signal
EP4044470A1 (en) Communication method, device, and storage medium
JP5945244B2 (ja) 多重伝送システム及び多重伝送方法
WO2024087975A1 (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