Presentation is loading. Please wait.

Presentation is loading. Please wait.

Inductive Logic Layer 2 Data Framing for Fun and Profit Eric L. Michelsen.

Similar presentations

Presentation on theme: "Inductive Logic Layer 2 Data Framing for Fun and Profit Eric L. Michelsen."— Presentation transcript:

1 Inductive Logic Layer 2 Data Framing for Fun and Profit Eric L. Michelsen

2 Inductive Logic 4/27/20012 Where In the Stack Are We? 1. Physical 3. Network 5. Session 4. Transport 6. Presentation 7. Application 2. Link OSI Bit serial (V.35, HSSI, DS1, DS3, etc.) HDLC ATM AAL2 Frame Relay AAL5PPP Ethernet Ether- net II 802.2 (LLC) SNAP Novell IPX 1490 Link Layer Sublayers

3 Inductive Logic 4/27/20013 Layers Upon Layers Synchronous HDLC (SDLC) RFC 1662 (Asynchronous HDLC) Frame Relay RFC 1490 (Multiprotocol in Frame Relay) Four Flavors of Ethernet ATM (cells, AAL5 packets) RFC 1483 (Multiprotocol in AAL5) FUNI Reference formats: DSL, Frame Relay, ATM, DS1, DS3, SONET

4 Inductive Logic 4/27/20014 Synchronous HDLC (aka SDLC) Sends frames (packets) over a serial (synchronous) bit stream Frames are delimited by flags (8 bits: 01111110) Shared flag closes one frame and opens the next Idle is usually flags, but may be 1s (mark idle) Shared zero flag is deprecated, and often banned: 01111110... idle... 0111111011111101111110 flag 2 or 4 opening flag 1 octet 01111110 closing flag flag CRC data

5 Inductive Logic 4/27/20015 HDLC Bit Stuffing Transparency is by “bit stuffing” everything between the flags: any sequence of five 1s has a 0 bit stuffed after it Stuffed frame length need not be a multiple of 8 bits Stuffing makes the “effective data rate” pattern sensitive 3 kinds of CRC: CRC-SDLC (aka CRC-CCITT), CRC-16, and CRC-32 (used by CCITT). CRC-16 detects errors better, but wasn’t known when CRC-SDLC was chosen. Rarely used. Hardware sends/detects flags, bit stuffing, CRC 01111110... 111110.... 01111110 opening flagclosing flaguser data: five 1s bit stuffed 0

6 Inductive Logic 4/27/20016 RFC 1662 ( Asynchronous HDLC ) Sends frames over a synchronous or asynchronous octet stream (e.g., modem, X.25, SONET) Based on ISO/IEC 3309:1991 (HDLC framing) Frames delimited by flag octets: 01111110 (0x7E) Byte stuffing: escape = 0x7D, Following byte = (user data XOR 0x20) Flag and Escape bytes in user data MUST be escaped PPP Async Control Character Map (ACCM) specifies other values from 0 - 0x1F to escape (Tx), and ignore (Rx) Byte stuffing is often done in software idle... opening flag 2 or 4 1 octet 01111110 closing flag CRC 01111110 data

7 Inductive Logic 4/27/20017 Frame Relay Uses synchronous HDLC framing sublayer Data Link Control Identifier (DLCI) multiplexes virtual circuits. Usually only local significance. Uses Q.922 header: Usually 2-octet address (1024 DLCIs), extensions for 3 or 4 (EA=1 on last address octet) Max information length is configurable, 4096 max 2 1 octet frame address 1 to max-length2 to 4 7 6 5 4 3 2 1 0 DLCI[9:4]DLCI[3:0] CR EA =0 FECNFECN BECNBECN DE EA =1 1 opening flag closing flag CRC information

8 Inductive Logic 4/27/20018 Frame Relay (cont.) Link Management Interface (LMI) on fixed DLCI Forward Explicit Congestion Notification (FECN) set by Frame Relay network if frame experienced congestion Backward ECN set if reverse direction is congested FECN & BECN set by network only  Q.922 is not clear if user equipment can set them or not Discard Eligible, set by network for overcommitted, or user for low priority, frames C/R bit carried transparently by Frame Relay network frame address 7 6 5 4 3 2 1 0 DLCI[9:4]DLCI[3:0] CR EA =0 FECNFECN BECNBECN DE EA =1

9 Inductive Logic 4/27/20019 RFC 1490 Multiprotocol Encapsulation in FR Allows a SNAP-like header in data field to encapsulate raw LAN frames (“bridged” mode)  Bridging header (OUI = 0x00-80-C2 for 802.1) encapsulates LAN frame  PID specifies with or without LAN FCS 13 20 or 4 LAN frame 6 Frame Relay information field 11 Also allows direct IP encapsulation (“routed” mode) Ctl = 3 Frame Relay information field NLPID = 0xCC dest MAC LAN data optional LAN FCS Ctl =3 OUI PID... pad =0 NLPID =0x80 IP packet

10 Inductive Logic 4/27/200110 Four Flavors of Ethernet Ethernet II IEEE 802.2 IEEE 802.2 SNAP Novell IPX (“raw 802.3”) All use a common hardware sublayer:  This is the basis of the “64-byte” minimum frame size  Finally recognized by IEEE 802.3-1998 as the “MAC” layer preamble source MAC PID + data FCS 1010... 1011 8 octets66 48 (min) to 1502 (max) 4 CRC-32 frame size 64 to 1518 pad (if needed) SFDSFD Ethernet Common HW sublayer destination MAC

11 Inductive Logic 4/27/200111 Ethernet II First widespread Ethernet standard PIDs administered by IEEE All IP on Ethernet is required to support this (RFC 1122), and almost all use it. All PIDs are >= 1536 (decimal) Exact packet length is not available from frame data alone, because of padding preamble data 8 octets6642 pad (if needed) SFDSFD Ethernet IICommon HW sublayer 46 (min) to 1500 (max) Common HW sublayer source MAC destination MAC PIDFCS

12 Inductive Logic 4/27/200112 Ethernet IEEE 802.2 Destination and Source Service Access Points (DSAP and SSAP) are essentially protocol IDs Used by IPX since Netware 3.12 (SAP=0xE0) Not used for IP Exact length available because ‘length’ specifies valid data, not including padding Don’t confuse Service Access Point (SAP) with Service Advertising Protocol (SAP) data 2 43 to 1497 111 length pad (if needed) preamble 8 octets 4 FCS dest MAC source MAC 6 length DSAPSSAPCtl

13 Inductive Logic 4/27/200113 IEEE 802.2 SNAP SubNetwork Access Protocol (SNAP) OUI + PID allows vendors to define globally unique protocol identifiers  OUI = Organizationally Unique Identifier OUI = 0 implies PID is an Ethernet II PID Optional support in IP (RFC 1042) data 66 length pad (if needed) 38 to 1492 preamble 8 octets 4 FCS dest MAC source MAC 2 length DSAPSSAP 111 Ctl OUI PID 3 2

14 Inductive Logic 4/27/200114 Novell IPX (“raw 802.3”) Defined by Novell before 802.3 was complete Phased out by Novell in Netware 3.12 “Checksum” is forced to 0xFFFF (=> none), takes place of DSAP/SSAP Does not allow a real IPX checksum preamble destination MAC data 8 octets664 IPX header pad (if needed) 46 (min) to 1500 (max) 2 IPX checksum = FFFF IEEE 802.3 FCS 2 source MAC length

15 Inductive Logic 4/27/200115 preamble source MAC dest MAC source MAC dest MAC source MAC dest MAC How Can I Tell? Check PID/length first, then DSAP/SSAP data/pad FCS data/pad SSAPCtl data/pad preamble source MAC length 3-1535 Ethernet II 802.2 SNAP Novell old IPX length 2-1535 SSAP = AA length 8-1535 dest MAC DSAP FFFF DSAP = AA PID >= 1536 FCS Ctl OUI PID

16 Inductive Logic 4/27/200116 ATM Cells Synchronous bit stream Bit stream may be framed (DS3, OC3) Cells are 53 bytes: 5 header + 48 payload Idle with null or unassigned cells Cell delineation usually by Header Error Check (HEC) ATM switches operate primarily on cells, ignoring payload type (PT) VPI/VCI is virtual circuit identifier VPI is 8 bits (UNI) or 12 bits (NNI) VCI is 16 bits CLP is like Frame Relay DE GFC/ VPI... VCI......VCI......VCI VPI......VPI PT CLP HEC (8-bit CRC) Payload 48 octets 1 2 3 4 5 6 : 53  8 bits 

17 Inductive Logic 4/27/200117 ATM AAL5 (Packets) Packet framing above cell layer ATM Adaptation Layer 5 (AAL5) includes Segmentation and Reassembly (SAR) of packets User-user bit in cell header payload-type (PTI) indicates last cell in packet SAR (AAL5) cells ATM layer packet layer packets cell AAL5 packet last cell PTI = last cell cell header

18 Inductive Logic 4/27/200118 ATM AAL5 (Packets), cont. Control, length, and CRC-32 at end of last cell Control field currently unused ‘data length’ provides precise length Length in trailer allows starting to send packet before length is known  (cut through switches, e.g. frame to ATM) CRC-32 42 ctl 1 pad 0 to 65,535 octets0 to 47 N x 48 UU 1 data length data length

19 Inductive Logic 4/27/200119 dest MAC LAN data DSAP =AA SSAP =AA Ctl =3 pad 00-00 111322 LAN frame 6... AAL5 or FUNI data field... RFC 1483 Multiprotocol Encapsulation in ATM optional LAN FCS 0 or 4 Requires an 802.2 SNAP-like header in data field Allows for raw LAN frames (“bridged” mode)  Header (OUI = 0x00-80-C2 for 802.1) encapsulates LAN frames  PID specifies with or without LAN FCS Also allows direct IP encapsulation (“routed” mode) DSAP AA SSAP AA Ctl 03 OUI PID 00 00 00 08 00 OUI PID 00 80 C2 00 xx IP packet

20 Inductive Logic 4/27/200120 Classical IP Over ATM RFC 1577 (Classical IP and ARP over ATM)  Specifies RFC 1483 Routed IP format (802.2 SNAP)  Defines Inverse-ARP for identifying your IP peer  Defines a bunch of LAN Emulation (LANE) SVC stuff that no one uses

21 Inductive Logic 4/27/200121 FUNI ATM standard for Frame User-Network Interface Q.922 HDLC frames to ATM AAL5 interworking Fully supports ILMI, OAM, SVCs: all ATM management Interworking Device cells Premise VC payload padAAL5 trailer variable VC payload HDLC flag CRC HDLC flag Q.922 Premise format ATM format ATM Network FUNI

22 Inductive Logic 4/27/200122 VC payload HDLC flag CRC Q.922 Q.922 +1490 ISO protocol packet HDLC flag CRC 1490 (IP) 1483 FUNI (IP) IP packet HDLC flag CRC03 CC IP packet HDLC flag CRC HDLC flag 1483 FUNI (Ethernet) Ethernet frame HDLC flag Q.922 DLCI 528 CRC AA AA 0300 80 C200 07 HDLC flag Q.922 DLCI 528 AA AA 0300 00 0008 0000 1490 (Ethernet) Ethernet frame Q.922 DLCI 16 03 00 8000 80 C200 07 CRC HDLC flag Some Common Encapsulations HDLC flag Q.922 DLCI 16 Q.922 03 NL- PID HDLC payload HDLC flag CRC HDLC HDLC flag HDLC + PPP PPP information HDLC flag Adrs Ctl FF 03 CRC HDLC flag Optional PPP-PID 1 or 2

23 Inductive Logic 4/27/200123 VC payload HDLC flag CRC “None” HDLC flag PPP information HDLC flag CRC PPP- RFC1973 HDLC flag 03 PPP-PID v a r i a b l e NL- PID Frame Relay Encapsulations 1490 (IP) 1483 FUNI (IP) IP packet HDLC flag CRC03 CC IP packet HDLC flag CRC HDLC flag 1483 FUNI (Ethernet) Ethernet frame HDLC flag CRC AA AA 0300 80 C200 07 HDLC flag AA AA 0300 00 0008 0000 1490 (Ethernet) Ethernet frame 03 00 8000 80 C200 07 CRC HDLC flag Q.922

24 Inductive Logic 4/27/200124 VC payload “None” (AAL5) padAAL5 trailer 1483 IP (ATM) IP packet padAAL5 trailer variable 1483 (Ethernet) Ethernet frame AA AA 0300 80 C200 0700 padAAL5 trailer variable ATM Encapsulations AA AA 0300 00 0008 00 Cisco- PPP PPP information Adrs Ctl FF 03 Optional padAAL5 trailer variable PPP-PID 1 or 2 PPP-2364- NULL PPP information padAAL5 trailer variable PPP-PID 1 or 2 FE FE 03 CF PPP-2364- LLC PPP information padAAL5 trailer variable PPP-PID 1 or 2 VC payload Q.922 padAAL5 trailer variable FRF.5

25 Inductive Logic 4/27/200125 M11M12F6=1C6 DS1 ESF Framing DS1-ESF (unchannelized) M1C1M2F1=0 M3C2M4F2=0 M5C3M6F3=1 M7C4M8F4=0 M9C5M10F5=1 192-bit Payload Frame Alignment Signal (FAS) 6-bit CRC 4 kbps Facility Data Link (FDL) 193-bit frame 4 x 6 = 24 frames = 1 superframe Framing is bit-oriented (rather than octet-oriented) 8k frames/s x 193 = 1.544 Mbps line rate (exactly) 8k frames/s x 192 = 1.536 Mbps payload rate (exactly) 8k frames/s  24  333 superframes/s Reference T1.107 Note: SF (aka D4) framing is not usable for data transport

26 Inductive Logic 4/27/200126 C1=1C2=1C3=1 C1=1C2=1C3=1 FE BE C1=1F1=1C2=1F2=0 FE AC F3=0F4=1 C1=1F1=1C2=1F2=0C3=1F3=0F4=1 CPF1=1CPF2=0CPF3=0F4=1 FE BE F1=1F2=0F3=0F4=1 DLF1=1DLF2=0DLF3=0F4=1 F1=1F2=0F3=0F4=1 F1=1F2=0F3=0F4=1 M2 =1 DS3 Framing X1 X2 P1 P2 M1 =0 84-bit Payload M-subframe Alignment 680-bit M-subframe 7 M-subframes = 1 M-frame Framing is bit-oriented. C-bit-parity shown. M23 mode sets C1 in subframe-1 randomly, other C-bits per stuffing X1 = X2 = not Remote Alarm Indication (RAI) P1 = P2 = CP = XOR of previous M-frame payload bits CP are end-to-end parity bits 44.736 Mbps line rate (exact) 44.736 x (84 / 85)  44.210 Mbps payload rate M3 =0 M-Frame Alignment Reference T1.107 FEAC = Far End Alaram & Control FEBE = Far End Block Error DL = Data Link: HDLC EOC

27 Inductive Logic 4/27/200127 STS-1 (component of OCn) 90 Columns 810 Byte Frame Framing is byte-oriented. Line rate = 8000 frames/s x 90 x 9 x 8 bits= 51.840 Mbps Reference GR-253, chap 3. A1A2 J0/Z 0 B1E1F1 D1D2D3 H1H2H3 B2K1K2 D4D5D6 D7D8D9 D10D11D12 S1/ Z1 M0 | M1/ Z2 E2 9 Rows STS-1 Envelope Capacity 87 Columns Section overhead Line overhead Path Overhead (POH) STS-1 Payload Capacity (84 useable columns) 8000 x 84 x 9 x 8 = 48.384 Mbps Fixed Stuff ATM cells, etc. H1/H2 point to the Synchronous Payload Envelope (SPE) at arbitrary byte offset J1 Transport overhead J1 B3 C2 G1 F2 H4 Z3 Z4 Z5

28 Inductive Logic 4/27/200128 STS-Nc SPE STS-3c Payload Capacity: 8000 x 260 x 9 x 8 = 149.760 Mbps STS-3c SPE: 3 x 87 = 261 Columns Reference GR-253, chap 3. 9 Rows 260 Columns J1 B3 C2 G1 F2 H4 Z3 Z4 Z5 STS-12c Payload Capacity: 8000 x 1040 x 9 x 8 = 599.040 Mbps STS-12c SPE: 12 x 87 = 1044 Columns 9 Rows 1040 Columns Path Overhead (POH) J1 B3 C2 G1 F2 H4 Z3 Z4 Z5 Fixed Stuff Path Overhead (POH) Line Rate = N x 51.840 Mbps Framing chosen to match STM-N STS-48c (not shown) is exactly 4 times STS-12c (POH + 15 Stuff)

29 Inductive Logic 4/27/200129 This slide intentionally left blank

Download ppt "Inductive Logic Layer 2 Data Framing for Fun and Profit Eric L. Michelsen."

Similar presentations

Ads by Google