Topics on Computer Networks Seminar414 Network Working Group

  • Slides: 22
Download presentation
Topics on Computer Networks Seminar(4/14) Network Working Group Request for Comments: 3450 Category: Experimental

Topics on Computer Networks Seminar(4/14) Network Working Group Request for Comments: 3450 Category: Experimental Asynchronous Layered Coding(ALC) Protocol Instantiation Apr. 14. 2010 Database and Information Systems Lab at HUFS Hwayoung Choe(hychoe@dislab. hufs. ac. kr)

Contents Introduction • • • Delivery service models Scalability Environmental Requirements & Considerations Architecture

Contents Introduction • • • Delivery service models Scalability Environmental Requirements & Considerations Architecture Definition • • • LCT building block Multiple rate congestion control building block FEC building block Session Description Packet authentication building block Functionality Definition • • • Packet format used by ALC Detailed Example of Packet format used by ALC Header-Extension Fields Sender Operation Receiver Operation 2

Abstract § Asynchronous Layered Coding(ALC) Protocol § § massively scalable reliable content delivery protocol

Abstract § Asynchronous Layered Coding(ALC) Protocol § § massively scalable reliable content delivery protocol LCT + FEC + Multiple-rate Control § § FLUTE (File Delivery over Unidirectional Transport) LCT building block : session & channel management WEBRC building block : Network congestion control FEC building block : Forward error control FLUTE(RFC 3926) LCT Building Block(RFC 3451) ALC Protocol (RFC 3450) WEBRC Building Block(RFC 3738) FEC Building Block(RFC 3452) Packet Authentication Building Block 3

Introduction • • • Delivery service models Scalability Environmental Requirements & Considerations 4

Introduction • • • Delivery service models Scalability Environmental Requirements & Considerations 4

Architecture Definition • • • LCT building block Multiple rate congestion control building block

Architecture Definition • • • LCT building block Multiple rate congestion control building block FEC building block Session Description Packet authentication building block 7

LCT building block § ALC Protocol에서 세션의 관리 기능 제공 § § § TSI(Transport

LCT building block § ALC Protocol에서 세션의 관리 기능 제공 § § § TSI(Transport Session Identifier) § § 각각의 파일 Object 구분 CCI(Congestion Control Information) § § Receiver IP주소와 UDP port로 세션 내의 채널을 식별 TOI(Transport Object ID) § § 세션 내의 수신자에게 전달할 기본적인 정보의 내용과 특징 LCT 헤더와 확장 헤더의 형식들을 정의 사용여부 및 Congestion Control Block 정보를 포함 Extension Header § 부가 정보 및 FEC 관련 정보를 추가 8

Session Description § 수신자가 ALC 세션에 참가하기 전에 얻어야 하는 Session Description The multiple

Session Description § 수신자가 ALC 세션에 참가하기 전에 얻어야 하는 Session Description The multiple rate congestion control building block to be used for the session The sender IP address The number of channels in the session The address and port number used for each channel in the session The Transport Session ID(TSI) to be used for the session An indication of whether or not the session carries packets for more than one object If Header Extensions are to be used, the format of these Header Extension. Enough information to determine the packet authentication scheme being used, if it is being used. § Session Description 전달 형태 및 방법 § § RFC 2327 RFC 3023 RFC 2068 RFC 2974 : : SDP XML Metadata HTML/Mime Header Format 정의된 SAP로 브로드캐스팅 11

Functionality Definition • • • Packet format used by ALC Detailed Example of Packet

Functionality Definition • • • Packet format used by ALC Detailed Example of Packet format used by ALC Header-Extension Fields Sender Operation Receiver Operation 13

Packet format used by ALC 14

Packet format used by ALC 14

Detailed Example of Packet format used by ALC V C r S O H

Detailed Example of Packet format used by ALC V C r S O H T R A B 15 HDR_LEN Codepoint(CP)

ALC Header Format(1) § ALC는 LCT기반의 프로토콜로서 세션관리 기능 수행 § LCT에서 정의된 패킷

ALC Header Format(1) § ALC는 LCT기반의 프로토콜로서 세션관리 기능 수행 § LCT에서 정의된 패킷 형식을 그대로 사용 V C r S O H T R A B HDR_LEN Codepoint(CP) LCT version number (V) 4 bits LCT 헤더의 버전 Congestion control flag (C) 2 bits CCI field의 길이를 32 bits 단위로 표현 Reserved (r) 2 bits Reserved for future use. Sender는 0으로 설정 Transport Session Identifier flag (S) 1 bit TSI field의 길이 표현 : 32*S + 16*H Transport Object Identifier flag (O) 2 bits TOI filed의 길이 표현 : 32*O + 16*H Half-word flag (H) 1 bit A multiples of a half-word Sender Current Time present flag (T) 1 bit 0일 경우, SCT 필드가 표시되지 않음을 의미 Expected Residual Time present flag (R) 1 bit 0일 경우, ERT필드 사용하지 않는다는 것을 의미(Sender가 설정) Close Session flag (A) 1 bit 1로 설정하여 Session의 종료를 Receiver에게 알림 Close Object flag (B) 1 bit Object의 전송 종료를 1로 설정하여 Receiver에게 알림 LCT Header length (HER_LEN) 8 bits LCT Header의 길이 Codepoint (CP) 8 bits FEC Payload ID의 정보를 확인 할 수 있는 필드 16

ALC Header Format(2) CCI field format C flag – 32, 64, 96, or 128

ALC Header Format(2) CCI field format C flag – 32, 64, 96, or 128 bits • • Multiple Rate Congestion Control 정보 포함 CTSI(Current Time Slot Index) : 8 bits CN(Channel Number): 8 bit PSN(Packet Sequence Number): 16 bits Congestion Control Information(CCI, Length = 32 bits) Transport Session Identifier (TSI, Length = 32 bits) Transport Object Identifier (TOI, Length = 32 bits) TSI - 각 세션의 ID, Sender의 IP 주소와의 쌍으로 구성 TOI - 하나 이상의 컨텐츠 전송시, 컨텐츠 구분 - TOI = 0 , 하나의 파일 전송시 17

ALC Header Format(3) § FEC Payload ID의 길이와 형태는 FEC building block이 기술된 FEC

ALC Header Format(3) § FEC Payload ID의 길이와 형태는 FEC building block이 기술된 FEC ENCODING ID에 의해 결정 FEC Payload ID Format SBN(Source Block Number): 32 bits • Object의 인코딩 심복의 소스 블록을 지정 • 0 ~ N-1까지의 연속된 숫자 • N : Object 안의 소스 블록의 개수 ESI(Encoding Symbol ID): 32 bits 18 Symbol : FEC 코드에 의해 처리되는 데이터의 단위 Encoding Symbol (= source symbol, repair symbol) : Object의 정보를 포함하는 심볼

Header-Extension Fields § § Extended-size versions of already existing header fields Sender and Receiver

Header-Extension Fields § § Extended-size versions of already existing header fields Sender and Receiver authentication information. Header Extension Length(8 bits) Header Extension Type(8 bits) Variable Length Fixed Length 19

Q&A 22

Q&A 22