* Your assessment is very important for improving the workof artificial intelligence, which forms the content of this project
Download Chapter 10 Lecture Presentation
Airborne Networking wikipedia , lookup
Distributed firewall wikipedia , lookup
Remote Desktop Services wikipedia , lookup
Point-to-Point Protocol over Ethernet wikipedia , lookup
Computer network wikipedia , lookup
Asynchronous Transfer Mode wikipedia , lookup
Wake-on-LAN wikipedia , lookup
IEEE 802.1aq wikipedia , lookup
Zero-configuration networking wikipedia , lookup
Deep packet inspection wikipedia , lookup
SIP extensions for the IP Multimedia Subsystem wikipedia , lookup
Cracking of wireless networks wikipedia , lookup
UniPro protocol stack wikipedia , lookup
Recursive InterNetwork Architecture (RINA) wikipedia , lookup
Real-Time Messaging Protocol wikipedia , lookup
Internet protocol suite wikipedia , lookup
Chapter 10 Advanced Network Architectures Contained Slides by Leon-Garcia and Widjaja Chapter 10 Advanced Network Architectures MPLS What is MPLS? LER IP IP L1 LSR IP L2 LSR IP L3 LER IP Multiprotocol Label Switching (MPLS) A set of protocols that enable MPLS networks Packets are assigned labels by edge routers (which perform longest-prefix match) Packets are forwarded along a Label-Switched Path (LSP) in the MPLS network using label switching LSPs can be created over multiple layer-2 links ATM, Ethernet, PPP, frame relay LSPs can support multiple layer-3 protocols IPv4, IPv6, and in others Why MPLS? Labels enable fast forwarding Circuits are good (sometimes) Conventional IP routing selects one path, does not provide choice of route Label switching enables routing flexibility Traffic engineering: establish separate paths to meet different performance requirements of aggregated traffic flows Virtual Private Networks: establish tunnels between user nodes Separation of Forwardng & Control All proposals leading to MPLS separate forwarding and control Control component Routing and signaling Routing and signaling Routing and signaling Routing tables Labeled packets Forwarding tables Switch fabric Forwarding component Labeled packets Before MPLS: forwarding & control intertwined Transition to CIDR (control) meant forwarding had to change to longestprefix match With MPLS: forwarding & control are separate All forwarding done with label switching Different control schemes dictate creation of labels & label-switched paths Control & forwarding can evolve independently Labels and Paths Ingress LSR Ingress LSR Ingress LSR Egress LSR Ingress LSR Ingress LSR MPLS domain Ingress LSR Label-switched paths (LSPs) are unidirectional LSPs can be: point-to-point tree rooted in egress node corresponds to shortest paths leading to a destination egress router Forwarding Equivalence Class IP1 IP1 IP2 IP1 LER IP2 L1 IP1 L1 LSR IP2 L2 IP1 L2 LSR IP2 L3 IP1 L3 LER IP2 IP2 FEC: set of packets that are forwarded in the same manner Over the same path, with the same forwarding treatment Packets in an FEC have same next-hop router Packets in same FEC may have different network layer header Each FEC requires a single entry in the forwarding table Coarse Granularity FEC: packets for all networks whose destination address matches a given address prefix Fine Granularity FEC: packets that belong to a particular application running between a pair of computers MPLS Labels ATM cell PPP or LAN frame VPI/VCI Layer 2 header MPLS header Layer 3 header Label Exp 20 bits 3 bits S TTL 1 bit 8 bits Labels can be encoded into VPI/VCI field of ATM header Shim header between layer 2 & layer 3 header (32 bits) 20-bit label + 1-bit hierarchical stack field + 8-bit TTL 3-bit “experimental” field (can be used to specity 8 DiffServ PHBs) Label Stacking Swap Swap and Push Pop and Swap Pop Push A IP B 3 C 2 7 D 2 6 E 2 8 F 2 5 G 4 IP MPLS allows multiple labels to be stacked Ingress LSR performs label push (S=1 in label) Egress LSR performs label pop Intermediate LSRs can perform additional pushes & pops (S=0 in label) to create tunnels Above figure has tunnel between A & G; tunnel between B&F All flows in a tunnel share the same outer MPLS label Label Distribution Label Distribution Protocols distribute label bindings between LSRs upstream downstream Label request for 10.5/16 LSR 2 LSR 1 (10.5/16, 8) Downstream-on-Demand Mode LSR1 becomes aware LSR2 is next-hop in an FEC LSR1 requests a label from LSR2 for given FEC LSR2 checks that it has next-hop for FEC, responds with label Label Distribution upstream downstream LSR 2 LSR 1 (10.5/16, 8) Downstream Unsolicited Mode LSR2 becomes aware of a next hop for an FEC LSR2 creates a label for the FEC and forwards it to LSR1 LSR2 can use this label if it finds that LSR2 is next-hop for that FEC Independent vs. Order Label Distribution Control Ordered Label Distribution Control: LSR can distribute label if LER It is an egress LSR It has received FEC-label binding for that FEC from its next hop (10.5/16, 3) LSR (10.5/16, 7) (10.5/16, 9) LSR (10.5/16, 8) (10.5/16, 8) LER (10.5/16, 6) Independent Label Distribution Control: LSR independently binds FEC to label and distributes to its peers Label Distribution Protocol LSR UDP Hello UDP Hello TCP open Initialization Label Request Label Mapping LSR Label Distribution Protocol (LDP), RFC 3036 Topology-driven assignment (routes specified by routing protocol) Hello messages over UDP TCP connection & negotiation (session parameters & label distribution option, label ranges, valid timers) Message exchange (label request/mapping/withdraw) MPLS Survivability IP routing recovers from faults in seconds to minutes SONET recovers in 50 ms MPLS targets in-between path recovery times Basic approaches: Restoration: slower, but less bandwidth overhead Protection: faster, but more protection bandwidth Repair methods: Global repair: node that performs recovery (usually ingress node) may be far from fault, depends on failure notification message Local repair: local node performs recovery (usually upstream from fault); does not require failure notification MPLS Restoration 2 3 4 1 8 5 6 7 Normal operation 2 3 4 1 8 5 6 7 Failure occurs and is detected 2 3 4 1 8 5 6 7 Alternate path is established, and traffic is re-routed No protection bandwidth allocated prior to fault New paths are established after a failure occurs Traffic is rerouted onto the new paths MPLS Protection Working path 2 3 1 8 5 Protection path 4 6 7 Protection paths are setup as backups for working paths Traffic carried on working path 2 3 4 1 8 5 6 7 Failure on working path is detected 2 3 4 1 8 5 6 7 Traffic is switched to the protection path 1+1: working path has dedicated protection path 1:1: working path shares protection path Protection paths selected so that they are disjoint from working path Faster recovery than restoration Generalized MPLS MPLS: Connection-oriented Leverages IP routing protocols, with TE extensions, to provide means for selecting good paths Provides signaling for establishing paths With appropriate extensions, Generalized MPLS can provide the control plane for other networks: SONET networks that provide TDM connections WDM networks that provide end-to-end optical wavelength connection Optical networks that provide end-to-end optical fiber path Hierarchical LSPs TDM circuit Virtual circuit A B TDM circuit C TDM switch Lightpath E F G H Lambda cross-connect I J LSR GMPLS allows node with multiple switching technologies to be controlled by one control component Notion of “label” generalized: D Virtual circuit TDM slot, WDM wavelength, optical fiber port LSP Hierarchy extended to generalized labels” MPLS LSP over SONET circuit over wavelength path over fiber Chapter 10 Advanced Network Architectures Multimedia Networking Multimedia Internet Applications Remote Local Interactive Local Playback Storage Download Multimedia Application Types Storage/Download Local playback On-line playback of multimedia sequences stored on remote servers May pause during playback to account for network congestion Continuous playback Playback of multimedia sequences from a local disk Streaming Capturing/or downloading multimedia sequences to/from storage devices Continuous on-line playback of remote multimedia sequences No pausing allowed Interactive Multi-participant interactive multimedia sessions Multimedia Applications … cont’d Application Type Storage Download Example Video Production Application QoS Requirements Bandwidth Delay Jitter Errors / Losses High Medium Medium None High None Off-line video Medium-Hi Medium-Hi editing Local Playback DVD Playback N/A N/A N/A None Streaming Real Audio/ Real Video Low - high High Medium Medium Continuous Playback Live Broadcast High Medium Low Medium Interactive Audio/Video Conference Low Low Low High Components of Multimedia Applications System components Capture and playback systems Encoders and Decoders File storage format and storage devices Real-time transport protocol (RTP) Real-time Streaming Protocol (RTSP) Session Description Protocol (SDP) Session Initiation/Announcements protocols (SIP/SAP) H.323 Multimedia Communications Compatibility Requirements Compatible CODEC Storage Decoders Encoders Network Multimedia protocol stack Signaling Media Transport MGCP/Megaco H.323 SDP RTSP Reservation Measurement RSVP RTCP SIP H.261, MPEG RTP TCP Application daemon Quality of Service UDP IPv4, IPv6 kernel PPP Sonet AAL3/4 AAL5 ATM PPP Ethernet V.34 Chapter 10 Advanced Network Architectures Real-Time Transport Protocol RTCP RTSP Real-Time Protocol RTP (RFC 1889) designed to support realtime applications such as voice, audio, video RTP provides means to carry: Type of information source Sequence numbers Timestamps Actual timing recovery must be done by higher layer protocol MPEG2 for video, MP3 for audio RTP Scenarios & Terminology Chair of conference obtains IP multicast address & pair of consecutive UDP port #s Even port #: audio Odd port # for RTCP stream Each media sent on a separate RTP session Fixed-length RTP PDUs sent during session Each RTP multicasts periodic receiver reports on RTCP port Mixers and Translators RTP Packet Format 0 8 V P X CC M 16 Payload Type 31 Sequence Number Time Stamp SSRC Identifier CSRC Identifier Version (2) Padding flag Extension Header Flag Contributing Source Count (# CSRC IDs) Marker (significant events, e.g. frame boundaries) RTP Packet Format 0 8 V P X CC M 16 Payload Type 31 Sequence Number Time Stamp SSRC Identifier CSRC Identifier Payload Type: e.g. PCM, MPEG2, … Sequence Number: detect packet loss Timestamp: sampling instant of first byte Synchronization Source: ID for synch source CSRC List: contributing sources to payload RTP Packet RTP Control Protocol (RTCP) RTP companion protocol Monitors quality of service at receivers Conveys monitored info to senders Canonical Name CNAME for each participant RTCP Packets Sender Report Packet Receiver Report Packet Source Description (SDES) BYE: end of participation by sender APP: application specific functions RTCP Packet Real Time Streaming Protocol (RTSP) RFC 2326 VCR-like user control of display: play, rewind, fast forward, pause, resume, etc… One connection for control messages One connection for media stream TCP or UDP can be used for the control channel RTSP Operations Web browser HTTP GET Presentation desc. Web server SETUP Media player PLAY Media server Media stream PAUSE TEARDOWN Client Server Chapter 10 Advanced Network Architectures Session Control Protocols SIP Session Initiation Protocol Session: association involving exchange of data between Internet end systems Internet telephone call; multimedia videoconference; instant messaging; event notification Session Initiation Protocol Setting up, maintaining, terminating session People & media devices Multicast or mesh of unicast connections Support for user mobility Over UDP or TCP SIP Protocol Text-based client-server protocol with syntax similar to HTTP Transaction: client request /server(s) response(s) Basic signaling through transactions SIP Request: method invoked INVITE, ACK, OPTIONS, BYE, CANCEL, REGISTER INVITE & ACK used to initiate calls registrar INVITE sip: [email protected] c= IN IPv4 192.168.12.5 m=audio 35092 RTP/AVP 0 (2) (3) INVITE sip: [email protected] c= IN IPv4 192.168.12.5 m=audio 35092 RTP/AVP 0 (4) (1) (6) (7) SIP/2.0 200 OK proxy (8) ACK (9) Media flow SIP/2.0 200 OK (5) ringing SIP System Components User Agents: software in end system that acts on behalf of a human user User Agent Client: to initiate a call User Agent Server: to answer a call Network Servers: call routing to establish a call Proxy Server: receives request, determines server to send it to, and forwards request; Response flows in reverse direction Redirect Server: returns message telling client address of next server Registrar: registrations on current user locations INVITE REQUEST INVITE request to UAS of desired user As message passes a SIP device, IP address of device attached to VIA header Used for reverse path Command Sequence header Use name, e.g. email address, telephone # Usually IP address or hostname not known Request method and sequence number Content type: default Session Description Protocol (SDP) Response UAC sends INVITE request to network server Request proxied/redirected until server found that knows IP address of user Response message contains: Same Call ID; CSeq; To/From Reach address to send transactions directly to UAS Information about media content SIP Ethereal Capture user1 calls user2 using Helmsman User Agent This User Agent is available at www.sipcenter.com INVITE: User1 sending out Invite Request for User2 Description of Invite Packet: Header contains information about the call. E.g.. To, From, Via. TRYING: User1 trying to connect to User2 Header Description of Trying Packet: RINGING: Packet Description: Connection has been established with User2, waiting for User2 to answer the call. OK and ACK : Connection has been established and user1 sends out a “OK” packet Packet Description for “OK”: User1 sends an “ACK” packet to user2 Packet Description for “ACK”: BYE: User2 wants to disconnect, sends a BYE packet Packet Description for BYE: User2 is trying to disconnect and hence sends “Trying” Packet “OK” is sent by User2 once call is successfully disconnected Chapter 10 Advanced Network Architectures Session Control Protocols H.323 Communications Systems H.323 Systems Support for real-time multimedia communications on LANs & packet networks H.323 provides call control, multimedia management, bandwidth management, interfaces to other networks H.323 terminals carry voice, audio, video, data, or combination Gateways handle signaling messages between packet network & other networks Gatekeeper handles call control inside H.323 net Multipoint control unit combine media streams Gatekeeper MCU Telephone Gateway Public Telephone Network IP network H.323 Terminal H.323 Terminal Scope of H.323 Microphone Speakers Audio Codec Camera, Display Video Codec Receive Path Delay H.225 Layer Data Equipment System Control System Control User I/F H.245 Control Call Control RAS Control LAN I/F H.323 Protocols H.225: call control within H.323 net RTP/RTCP used for audio/video streams H.245: control channel to set up logical channels RAS: registration, admission control, bandwidth management RSVP – Resource Reservation Protocol: allows user to request a specific amount of bandwidth Typical H.323 Stack H.323User Interface Multimedia Applications, Data Applications V.150 T.120 Media Control T.38 Audio Video Codecs Codecs G.711 H.261 G.723.1 H.263 G.729 H.264 .. .. Terminal Control and Management H.225.0 RTCP Call H.245 Signaling H.225.0 RAS RTP UDP TCP TCP/UDP UDP IP TCP/UDP TCP UDP Basic Call Setup Signaling H.225.0 Setup Optional Call Proceeding Progress Alerting Connect GW GW CONNECTED Release Complete Call Setup Capture TCP Control Packets No. Time Source Destination Protocol Info 6 18.904189 192.168.0.149 192.168.0.143 TCP 1748 > 1720 [SYN] Seq=1739645016 Ack=0 Win=16384 Len=0 7 18.905196 192.168.0.143 192.168.0.149 TCP 1720 > 1748 [SYN, ACK] Seq=4252100644 Ack=1739645017 Win=17520 Len=0 8 18.905366 192.168.0.149 192.168.0.143 TCP 1748 > 1720 [ACK] Seq=1739645017 Ack=4252100645 Win=17520 Len=0 11 19.497846 192.168.0.149 192.168.0.143 H.225.0 CS: Setup-UUIE 12 19.769449 192.168.0.143 192.168.0.149 TCP [Desegmented TCP] 13 20.099818 192.168.0.149 192.168.0.143 TCP 1748 > 1720 [ACK] Seq=1739645217 Ack=4252100649 Win=17516 Len=0 14 20.101044 192.168.0.143 192.168.0.149 H.225.0 CS: Alerting-UUIE 16 20.501086 192.168.0.149 192.168.0.143 TCP 1748 > 1720 [ACK] Seq=1739645217 Ack=4252100688 Win=17477 Len=0 20 29.091030 192.168.0.143 192.168.0.149 TCP [Desegmented TCP] 21 29.329256 192.168.0.149 192.168.0.143 TCP 1748 > 1720 [ACK] Seq=1739645217 Ack=4252100692 Win=17473 Len=0 22 29.330385 192.168.0.143 192.168.0.149 H.225.0 CS: Connect-UUIE 23 29.400799 192.168.0.149 192.168.0.143 TCP 1749 > 1862 [SYN] Seq=1740980379 Ack=0 Win=16384 Len=0 24 29.401781 192.168.0.143 192.168.0.149 TCP 1862 > 1749 [SYN, ACK] Seq=4253464033 Ack=1740980380 Win=17520 Len=0 25 29.401944 192.168.0.149 192.168.0.143 TCP 1749 > 1862 [ACK] Seq=1740980380 Ack=4253464034 Win=17520 Len=0 26 29.405685 192.168.0.149 192.168.0.143 TCP [Desegmented TCP] 27 29.453530 192.168.0.143 192.168.0.149 TCP [Desegmented TCP] 28 29.453752 192.168.0.149 192.168.0.143 H.245 TerminalCapabilitySet MasterSlaveDetermination 29 29.455958 192.168.0.143 192.168.0.149 H.245 TerminalCapabilitySet MasterSlaveDetermination 30 29.465312 192.168.0.149 192.168.0.143 TCP [Desegmented TCP] 31 29.471165 192.168.0.143 192.168.0.149 TCP [Desegmented TCP] 32 29.471402 192.168.0.149 192.168.0.143 H.245 TerminalCapabilitySetAck MasterSlaveDeterminationAck 33 29.472271 192.168.0.143 192.168.0.149 H.245 TerminalCapabilitySetAck MasterSlaveDeterminationAck 34 29.678682 192.168.0.149 192.168.0.143 TCP [Desegmented TCP] 35 29.679868 192.168.0.143 192.168.0.149 H.245 OpenLogicalChannel OpenLogicalChannel OpenLogicalChannel 43 30.532924 192.168.0.149 192.168.0.143 TCP 1749 > 1862 [ACK] Seq=1740980892 Ack=4253464654 Win=16900 Len=0 45 35.545028 192.168.0.143 192.168.0.149 RTCP Receiver Report 48 35.546773 192.168.0.149 192.168.0.143 RTCP Receiver Report 50 1239.290373 192.168.0.149 192.168.0.143 RSVP PATH Message. SESSION: IPv4, Destination 192.168.0.143, Protocol 17, Port 49608. SENDER TEMPLATE: IPv4, Sender 192.168.0.149, Port 49608. 51 1239.322672 192.168.0.143 192.168.0.149 RSVP RESV Message. SESSION: IPv4, Destination 192.168.0.143, Protocol 17, Port 49608. H.225.0 setup Alerting Connecting Negotiating Channel Usage Requesting Bandwidth Data Transfer Capture RTP video H.263 Packet No. Time Source Destination Protocol Info 62 1240.429251 192.168.0.143 192.168.0.149 TCP 1862 > 1749 [ACK] Seq=4253464654 Ack=1740980896 Win=17004 Len=0 63 1240.429470 192.168.0.149 192.168.0.143 H.245 OpenLogicalChannelReject OpenLogicalChannelAck OpenLogicalChannelAck MiscellaneousCommand MiscellaneousCommand OpenLogicalChannelConfirm 65 1240.622962 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12977, Time=3017250 66 1240.623218 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12978, Time=3017250 71 1240.854456 192.168.0.143 192.168.0.149 TCP 1862 > 1749 [ACK] Seq=4253464654 Ack=1740980980 Win=16920 Len=0 72 1240.854730 192.168.0.143 192.168.0.149 TCP 1503 > 1752 [ACK] Seq=4255085782 Ack=1742545885 Win=17315 Len=0 74 1240.915746 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12980, Time=3030750 75 1240.916004 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12981, Time=3030750 76 1240.916239 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12982, Time=3030750, Mark 87 1240.977683 192.168.0.149 192.168.0.143 TCP 1753 > 1503 [PSH, ACK] Seq=1742695460 Ack=4255248829 Win=17520 Len=25 88 1240.979358 192.168.0.143 192.168.0.149 TCP 1503 > 1753 [PSH, ACK] Seq=4255248829 Ack=1742695485 Win=17495 Len=21 89 1241.212546 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12983, Time=3044070 90 1241.212801 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12984, Time=3044070, Mark 91 1241.231672 192.168.0.149 192.168.0.143 TCP 1753 > 1503 [ACK] Seq=1742695485 Ack=4255248850 Win=17499 Len=0 92 1241.231775 192.168.0.149 192.168.0.143 TCP 1749 > 1862 [ACK] Seq=1740980980 Ack=4253464658 Win=16896 Len=0 93 1241.232617 192.168.0.143 192.168.0.149 H.245 MiscellaneousCommand 97 1241.364228 192.168.0.143 192.168.0.149 RTP Payload type=ITU-T H.263, SSRC=4062428632, Seq=32093, Time=1885770, Mark 98 1241.366210 192.168.0.149 192.168.0.143 TCP [Desegmented TCP] 99 1241.380190 192.168.0.149 192.168.0.143 TCP 1753 > 1503 [PSH, ACK] Seq=1742695485 Ack=4255248850 Win=17499 Len=268 100 1241.384497 192.168.0.143 192.168.0.149 TCP 1503 > 1753 [PSH, ACK] Seq=4255248850 Ack=1742695753 Win=17227 Len=106 Time=51984, Mark 163 1242.823618 192.168.0.143 192.168.0.149 RTP Payload type=ITU-T G.723, SSRC=756814963, Seq=32091, Time=52704 164 1242.836785 192.168.0.149 192.168.0.143 TCP 1753 > 1503 [ACK] Seq=1742695794 Ack=4255249018 Win=17331 Len=0 165 1242.836872 192.168.0.149 192.168.0.143 TCP 1754 > 1503 [ACK] Seq=1742808026 Ack=4255332966 Win=17168 Len=0 166 1242.897739 192.168.0.143 192.168.0.149 RTP Payload type=ITU-T G.723, SSRC=756814963, Seq=32092, Time=53424 167 1242.908675 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12996, Time=3120210 168 1242.908963 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12997, Time=3120210 173 1243.099425 192.168.0.143 192.168.0.149 RTP Payload type=ITU-T H.263, SSRC=4062428632, Seq=32109, Time=1963890, Mark 174 1243.107713 192.168.0.143 192.168.0.149 RTP Payload type=ITU-T G.723, SSRC=756814963, Seq=32093, Time=54144 175 1243.202816 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=12999, Time=3133620 176 1243.203076 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=13000, Time=3133620 177 1243.205246 192.168.0.149 192.168.0.143 RTP Payload type=ITU-T H.263, SSRC=1488263488, Seq=13001, Time=3133620, Mark More Control RTP Audio G.723 Media Gateway Control Protocols Enable simple terminal equipment (i.e. telephone) to connect to Internet for IP telephone service Two components: Media Gateway: performs media format conversion between telephone & Internet Residential Gateway: interacts between telephone and call agents in Internet Call agents interact with SS7 signaling network to setup calls Call agents use Media Gateway Control Protocol