390 likes | 398 Views
Learn about networks, including different types, protocols, and layered architecture. Discover how data is transmitted, shared resources, and the role of various network elements.
E N D
Networks What is a Network? • a set of applications and/or switches connected by communication links • many ``topologies'' possible: • local area networks (LAN) versus wide-area networks (WAN) • many different media: fiber optic, coaxial cable, twisted pair, radio, satellite • for applications: topology and media unimportant
Networks: What is a Network? • a software/hardware infrastructure: • original justification: allows shared access to computing resources (e.g., computers, files, data) • a medium through which geographically dispersed users communicate (e.g., email, teleconferencing) • a medium through distributed services/applications are implemented • an electronic village • an information highway, national information infrastructure • cyberspace - "a consensual [environment] experienced daily by billions of operators, in every nation, ...." Hotlink: Wiliam Gibson on Cyberspace
Networks: Packet-Switching • data entering network divided into chunks called "packets'' • packets traversing network share network resources (e.g., link bandwidth, buffers) with other packets • on demand resource use: statistical resource sharing • resources demands may exceed resources available: • e.g., A and B packets arrive at R1, destined for C • resource contention: queueing (waiting), delay
Networks: Circuit Switched Networks • all resources (e.g. communication links) needed by call dedicated to that call for duration • example: telephone network • resource demands may exceed resources available • A and B want to call C • resource contention: blocking (busy signal) • drawbacks: ?? • advantages: ??
Networks: Why statistically share resources? • More efficient • example: 1 Mbit/sec link; each user requires 100 Kbits/sec when transmitting; each user has data to send only 10% of time. • circuit-switching: give each caller 100 Kbits/sec capacity. Can support 10 callers. • packet-switching: with 35 ongoing calls, probability that 10 or more callers simultaneously active < 0.0004! • Can support many more callers, with small probability of` "contention.'' • if users are ``bursty'' (on/off), then packet-switching is advantageous
Networks:Elements of a Network • communication links: • point-to-point (e.g., A-to-B) • broadcast (e.g.,: Ethernet LAN) • host: computer running applications which use network (e.g.: H1) • router: computer (often w/o applications-level programs) routing packets from input line to output line. (e.g., C) • gateway: a router directly connected to two+ networks (e.g. A) • network: set of nodes (hosts/routers/gateways) within single administrative domain • internet: collection of interconnected networks
Networks:Protocols • protocol: rules by which active network elements (applications, hosts, routers) communicate with each other • protocols define : • format/order of messages exchanged • actions taken on receipt of message • rules by which two or more people communicate to provide a service, or to get something done • protocols in every day life:
Networks: Layered Architecture • complex system architecture simplified by layering. • layer N relies on services of layer N-1 to provide a service to layer N+1 • service from lower layer independent of how that service implemented • information/complexity hiding • layer N change doesn't affect other layers • interfaces define how services requested
Networks: Layered network architecture • the network consists of geographically distributed hardware/software components • a distributed layered view:
Networks: Layering and protocols • peer entities (e.g., processes) in layer N provide service by communicating (sending "packets") with each other, using communication service provided bylayer N-1. • logical versus physical communication:
Networks: The Internet and ISO/OSI reference models • ISO = International Standards Organisation • OSI = Open System Interconnection
Networks: OSI reference model • Physical Layer – Concerned with transmitting of raw bits over a communication channel. Common issues are: Voltage, bit duration, simplex, duplex, full duplex, connection establishment, cables and connectors • Data Link Layer – 1 and 0 organised into packets or frames and error detection and correction applied. • Network Layer – Data is organised into packets or frames and switching, queuing, routing and congestion control is applied. • Transport Layer – Multiplexing and demultiplexing of data from/to different sources. Flow control of the source. • Session Layer – Connection establishment, connection management, connection tear-down. • Presentation Layer – Data compression encoding and decoding, security encryption, format conversion • Application layer – commerce, betting, entertainment applications.
Networks: Layers of a protocol architectureApplication, socket and presentation layers • application layer • process-to-process communication • examples: WWW, email, teleconferencing, info. retrieval • socket layer (Internet only) • buffering and delivery of data at end systems • presentation layer (OSI only) • conversion of data to a common format (e.g., little endian versus big-endian byte orders, integer and floating point numbers). • Internet stack: data conversion a user-level concern
Networks: Layers of a protocol architectureSession and Transport layers • session layer (OSI only) • session set up (e.g., authentication), recovery from failure (broken session) • a "thin" layer • transport layer • transport service: end-to-end delivery of data • may multiplex several streams from higher layers • sender/receiver speed matching • Internet: TCP and UDP
Networks: Layers of a protocol architectureData Link and Physical layers • network layer • at end hosts: start packets on their way • at routers: control packet routing • bottleneck avoidance, congestion control • Internet: IP packets, BGP, RIP
Networks: Layers of a protocol architectureData Link and Physical layers • data link layer • point-to-point error free communication over a single link • multiaccess LAN protocols • speed matching between sender/receiver • Ethernet, HDLC, PPP • physical layer: • transmitting raw bits (0/1) over media
Networks: Internetworks: the Internet • an internet: interconnection of many networks • a network of networks • each network administered separately • the Internet: each network runs same software: the Internet protocols
Networks: Protocol packets • packet: unit of data exchanged between protocol entities in a given layer • data at one layer encapsulated in packet at lower layer • "envelope within envelope"
Networks: Generic issues in a layer • error control: make "channel" more reliable • flow control: avoid flooding slower peer • fragmentation: dividing large data chunks into smaller pieces; reassembly • multiplexing: several higher level session share single lower level connection • connection setup: handshaking with peer • addressing/naming: locating, managing identifiers associated with entities
Networks: IP Networks – version 4 • The Internet Protocol (IP) provides unreliable, connectionless packet delivery. • IP is connectionless because it treats each packet of information independently. • IP is unreliable because it does not guarantee delivery. That is, it does not require acknowledgments from the sending host, the receiving host, or intermediate hosts. • IPv4 addresses consists of four 8-bit words: • Addresses are represented as four 8-bit hexadecimal words, each separated by a colon e.g. 38:5F:CA:2E
Networks: IP Networks – version 4 • Version: The IP version number, 4 • Length: The length of the datagram header in 32-bit words • Type of service: Contains five subfields that specify the precedence, delay, throughput, reliability, and cost desired for a packet. • Total length: The length of the datagram in bytes including the header, options, and the appended transport protocol segment or packet. • Identification: An integer that identifies the datagram. • Flags: Controls datagram fragmentation together with the identification field. The flags indicate whether the datagram may be fragmented, whether the datagram is fragmented, and whether the current fragment is the final one. • Fragment offset: The relative position of this fragment measured from the beginning of the original datagram in units of 8 bytes. • Time to live: How many routers a datagram can pass through. Each router decrements this value by 1 until it reaches 0 when the datagram is discarded. This keeps misrouted datagrams from remaining on the Internet forever.
Networks: IP Networks – version 4 • Protocol: The high-level protocol type. • Header checksum: A number that is computed to ensure the integrity of the header values. • Source address: The 32-bit IPv4 address of the sending host. • Destination address: The 32-bit IPv4 address of the receiving host. • Options: A list of optional specifications for security restrictions, route recording, and source routing. Not every datagram specifies an options field. • Padding: Null bytes which are added to make the header length an integral multiple of 32 bytes as required by the header length field.
Networks: IP Networks – version 6 • IPv6 is the latest evolution of the Internet Protocol from IPv4. • IPv4 is limited by two factors: • The Internet is running out of addresses to assign. In fact, the assigned address space is actually very sparsely populated but there is no satisfactory way of releasing the unused addresses without seriously complicating routing or disrupting existing networks. • The 32-bit addresses used by IPv4 provides insufficient flexibility for global Internet routing. The deployment of Classless InterDomain Routing (CIDR) has extended the lifetime of IPv4 routing by a number of years, but the effort required to manage routing continues to increase. • Even if IPv4 routing could be scaled up, the Internet will eventually run out of network numbers. • IPv6 extends the maximum number of Internet addresses by using 128-bit addressing. • As both IPv4 and IPv6 protocols may coexist on the same network, providing an orderly migration from IPv4 to IPv6. • IPv6 has a simplified packet header and improved options.
Networks: IP Networks – version 6 • IPv6 addresses consists of eight 16-bit words: • Addresses are represented as eight 16-bit hexadecimal words, each separated by a colon e.g. 3829:5FAB:CA27:2EB2:AB23:923C:FAB4:5469 • “IPv4-mapped IPv6 address'' has the following format: • 0000:0000:0000:0000:0000:FFFF:x1.a2x.x3.x4 • IPv6 has three types of addresses: • A “unicast address'' uniquely identifies an interface and a system. • A “multicast address'' uniquely identifies a number of interfaces and systems that belong to a multicast group. • An “anycast address'' is an address that has a single sender, multiple listeners, and only one responder (normally the “nearest'' one, depending on the routing protocols' measure of distance). For example, several web servers may listen on an anycast address. When a request is sent to this address, only one responds.
Networks: IP Networks v6: Global Unicast Address format • TLA ID: Top-level aggregation identifier will be used to divide the address space into geographical regions and major subdivisions of these such as countries, states, and broad organizational types. Routers at the top level will have a routing table entry for every active TLA ID as well as additional lower-level entries for their TLA. • NLA ID: Next-level aggregation identifier assigned by the RIRs (Regional Internet Registries) to service providers and large organizations. The NLA will be used to divide the address space selected by a TLA ID between Internet service providers (ISPs) and individual large organizations such as governments and multinational companies. • SLA ID: Site-level aggregation identifier assigned within an organization. The SLA allows each site to allocate up to 65,536 subnets per NLA ID. Organizations that require additional subnets can achieve this by aggregating ranges of NLA IDs. • Interface ID: Identifies an individual interface on a system.
Networks: IP Networks v6: Extension Header • Specifically, IPv6 omits the following fields from IPv4: • header length (the length is constant) • identification • flags • fragment offset • header checksum • IPv6 options improve over IPv4 by being placed in separate extension headers that are located between the IPv6 header and the transport-layer header in a packet. • Newly defined extensions can be integrated more easily into IPv6 extension headers: • hop-by-hop options that apply to each hop (router) along the path • routing header for loose/strict source routing (used infrequently) • define the packet as a fragment and contains information about the fragmentation (IPv6 routers do not fragment) • IP Security authentication • IP Security encryption • destination options for the destination node (ignored by routers)
Networks: IP Networks v6: Extension Header • IPv6 uses the priority field in the IP header to provide an explicit priority definition. A node can set this value to indicate the relative priority of a particular packet or set of packets. The node, routers, or the destination host can use the value to decide what to do with the packet, such as letting it pass or dropping it. • Congestion-controlled traffic is defined as traffic that responds to congestion through a “back-off'' or other limiting algorithm. Priorities for congestion-controlled traffic are: • 0 uncharacterized traffic • 1 “filler'' traffic such as netnews • 2 unattended data transfer such as electronic mail • 3 reserved • 4 attended bulk transfer such as FTP • 5 reserved • 6 interactive traffic such as telnet • 7 control traffic such as routing protocols
Networks: IPv6 over IPv4 using Tunneling • Tunneling allows the existing IPv4 routing infrastructure to carry IPv6 traffic. • Dual-stack hosts and routers (that support both IPv4 and IPv6) can tunnel IPv6 datagrams over regions of IPv4 routing topology by encapsulating the IPv6 datagrams within IPv4 packets.
Networks: Digital Video Broadcast - Terrestrial, Satellite, Cable • Satellite Modulation: Quadrature Phase Shift Keying (QPSK) • Terrestrial Modulation: Orthogonal Frequency Division Multiplexing (OFDM) • Cable Modulation: Quadratrure Amplitude Modulation (QAM)
Networks: Digital Video Broadcast - Terrestrial, Satellite, Cable • Compression: The audio-visual source material is compressed to get a low enough bit rate to make economic use of available transmission bandwidth. • Packetisation and synchronisation: Each Elementary Stream (ES) is split into access units (AU), (audio frames or pictures). AUs are packetised into a Packetised (PES) packet, by adding a header with information about the content of the packet. PES structure uses time stamps. • Multiplexing: The MPEG-2 multiplexes PESs in a synchronous way into one transport stream which contains all data required by a receiver to recognise services (PSI/SI), decode and present synchronously audio-visual material etc. • Error Protection: DVB has made several specifications in order to adapt the stream to different networks, e.g. satellite, terrestrial, and cable • Modulation and transmission: DVB specifies how the signal is adapted to different networks.
Networks: Digital Video Broadcast - Packetised Elementary Streams • The PES packet consists of a header and a payload and may be of variable length up to 64 kBytes. However, PES packets containing a video elementary stream may have unbounded or unspecified PES packet length.
Networks: Digital Video Broadcast: Presentation and Decoding Time Stamps • When MPEG-2 bi-directional coding is used, a picture may have to be decoded some time before it is presented, so that it can be used as a source of data for a B-picture. • The decoder needs to know when to decode a frame and when to display it. Consequently, two types of time stamps exists: • Presentation Time Stamp (PTS) – indicates the time when a picture must be presented • Decoding Time Stamp (DTS) – indicates the time
Networks: Transport Stream • Transport layer converts PES packets and sections into small 188 bytes packets of constant size. • Structure: 188 bytes, min 4 bytes header, adaptation field (up to 183 bytes)
Networks: Transport Stream Program Specific Information – PSI tables • Program Association Table: (PID=0x0000) List of all available programs (i.e. services) in a TS. Provides the link between the program number and the PMT PIDs. Program number 0 always carry the NIT. • Program Map Table: (PID= Assigned in PAT) List of elementary streams belonging to a program. Also contains info (=descriptors) about each program and individual ESs.
Networks: Transport Stream Service Information – SI tables • Service Description Table: (PID= 0x0011) Contains data describing the services in the transport stream, e.g. service name and provider.
Networks: Transport Stream Other Service Information – SI tables • Network Information Table: (PID= 0x0010) Contains information about the physical network carrying the transport stream. Also included are details of other transport streams. • Service Description Table: (PID= 0x0011) Contains data describing the services in the transport stream, e.g. service name and provider. • Bouquet Association Table: (PID= 0x0011) Provides information about a collection of services marketed as a single product. Services may be located in different transport streams. • Event Information Table: (PID= 0x0012) Contains information about program names, start time, duration etc. both on the actual TS and other transport • Running Status Table: (PID= 0x0013) Contains information about the status of an event • Time and Date Table: (PID= 0x0014) Carries the UTC-time and date. • Time Offset table: (PID= 0x0014) Carries the UTC-time and date information and the local time offset. • ….. and other tables
Networks: DVB - Data Broadcasting Profiles • Data piping: simple, asynchronous, end-to-end delivery of data through DVB • Data streaming: streaming-oriented, end-to-end delivery of data either asynchronously, synchronously or synchronised with other data streams (e.g. audio and video) through DVB • Multiprotocol encapsulation (MPE): for services that require transmission of datagrams of communication protocols via DVB • Data carousels: for data services that require periodic, cyclical transmission of data modules through DVB • Object carousels: for data services that require periodic, cyclical broadcasting of Digital Storage Media – Command and Control (DSM-CC) User-User objects through DVB