580 likes | 836 Views
NETE0510 Network and Protocol Architecture. Supakorn Kungpisdan. Outline. Requirements Network Architecture Performance. Links, Nodes, and Clouds. Switched Network. Switched Network (cont’d). Circuit-switched: telephone system Establish a dedicated circuit across a sequence of links
E N D
NETE0510Network and Protocol Architecture Supakorn Kungpisdan NETE0510
Outline • Requirements • Network Architecture • Performance NETE0510
Links, Nodes, and Clouds NETE0510
Switched Network NETE0510
Switched Network (cont’d) • Circuit-switched: telephone system • Establish a dedicated circuit across a sequence of links • Packet-switched network: data network • Store-and-forward • Packet or message • Efficiency of circuit-switched VS packet-switched networks • Cloud: any type of network e.g. point-to-point, multiple access, switched NETE0510
Internetwork • A set of independence networks are interconnected to form an internetwork NETE0510
Internetwork(cont’d) • Internet VS internet • Router or gateway: • a node connecting to two or more networks • Address: • a byte string that identifies a node; used to distinguish a node from others • Routing • A process of determining systematically how to forward messages toward the destination node based on its address NETE0510
Unicast, Multicast, Broadcast • Unicast: a source node sends a message to a single destination node • Broadcast: a source node sends a message to all the nodes on the network • Multicast: a source node sends a message to some subset of nodes • Network: • two or more nodes connected by a physical link, or • Two or more networks connected by a node • A large message is divided into packets • Why? NETE0510
Switch Multiplexing Packets NETE0510
Switch Multiplexing Packets (cont’d) • Switch makes decision on a packet-by-packet basis • FIFO • Round robin STDM • Quality of Service (QoS) • Congestion • Switch receives packets faster than the share link can accommodate need a buffer • Running out of buffer packet loss NETE0510
Additional Benefits of Statistical Multiplexing • Cost effective for multiple users to share network resources • Define the packet as the granularity with which the links of the network are allocated to different flows • Decide the flow with per packet basis • Fairly allocating capacity to different flows • Dealing with congestion when it occurs NETE0510
Cost-effective Resource Sharing Efficiency • How do all the hosts that want to communicate at the same time share the network? • Multiplexing : a system resource is shared among multiple users • Analogous to time sharing computer: CPU is shared among multiple job • Multiplexing Techniques • Synchronous Time-Division Multiplexing (STDM) • Frequency-Division Multiplexing (FDM) • Same concept as TV transmission • Statistical Multiplexing • Share physical link only when more than one node transmit data at the same time • Transmit data on demand rater than during a predetermined time slot NETE0510
Support for Common Services • Network supports application-level processes to communicate with each other • Viewed as logical “channel” NETE0510
Support for Common Services (cont’d) • What functionality the channels should provide to application programs? • Delivery guarantee? • In-order delivery? • Secure from eavesdropping? • Etc. NETE0510
Identifying Common Communication Patterns • Two general types of channels • Request/reply channel • Used in file transfer and digital library apps • Need security/privacy protection • Message stream channel • Used in video-on-demand and videoconferencing apps • No 100% delivery guarantee, but in-order • Unicast/multicast/broadcast NETE0510
Reliability • 3 classes of failures • Bit errors or burst errors • Occurred from outside forces e.g. lightning strikes, power surges, and microwave ovens • Rare 1/106-107 bits on copper-based cable and 1/1012-1014 bits on optical fiber • Packet errors • Packet loss because there are bit errors • Congestion • Software error e.g. forward packet to the wrong link • Node and link errors • Physical link is cut, computer crashes by software, power failure • Need time to fix • Need to understand application’s requirements and recognize limitations of underlying technology • Semantic gap: the gap between that application expects and what the underlying technology can provide NETE0510
Outline • Requirements • Network Architecture • Performance NETE0510
Network Architecture • A network must provide general, cost-effective, fair, and robust connectivity among a large number of computers • Network architecture: a general blueprint that guide design and implementation of networks • OSI and Internet architecture NETE0510
Layering and Protocols • When the system gets complex, abstraction is needed • Abstraction leads to layering • Start by services offered by the underlying hardware and then add a sequence of layers of services • The services provided at the higher layers are implemented in terms of the ones provided by the low layers NETE0510
Layering NETE0510
Simplified Network Architecture NETE0510
Protocols • Protocols: abstract objectives that make up the layers of a network system • Protocol provides a communication service that higher-level objects use to exchange messages • Each protocol defines two different interfaces: • Service interface to other objects on the same computer • Peer interface to another computer • Indirect communications: protocol in each layer passes a message to lower layer-protocol which in turn deliver the message to its peer • Multiple protocols provide a different communication service • Protocol graph: a suite of protocol that make up a network system NETE0510
Protocols (cont’d) NETE0510
Example of Protocol Graph NETE0510
Encapsulation NETE0510
OSI Architecture NETE0510
OSI Architecture (cont’d) • Physical layer: handle the transmission of raw bits over a communications link • Data-link layer: collect a stream of bits into a large aggregate called a frame • Network layer: handle routing among nodes within a packet-switched network. • Transport layer: implement a process-to-process channel • Session layer: provide a name space used to tie together the potential different transport streams • Presentation layer: concern with the format of data exchanged between peers • Application layer: include network applications NETE0510
OSI Model Analogy • Create document (paper +pen, pencil, etc, used for separate rooms) • Translate, arrange format(dictionary, translator) • Doorman, enter and leave the room • Check document conditionand bring document to each room(port number) living room (80), dining room(21), art studio (23) • Postal address (IP address)front door,post office • How to deliver document trucks, ships, planes(ID card = MAC address)) • Street, ocean, air NETE0510
Ethernet and the OSI Model Open Systems Interconnection (OSI) NETE0510
Network Layer Devices in Data Flow NETE0510
Internet (TCP/IP) Architecture NETE0510
TCP/IP Layers • no official model but a working one • Application layer • Host-to-host, or transport layer • Internet layer • Network access layer • Physical layer NETE0510
Physical Layer • concerned with physical interface between computer and network • concerned with issues like: • characteristics of transmission medium • signal levels • data rates • other related matters NETE0510
Network Access Layer • exchange of data between an end system and attached network • concerned with issues like : • destination address provision • invoking specific services like priority • access to & routing data across a network link between two attached systems • allows layers above to ignore link specifics NETE0510
Internet Layer (IP) • routing functions across multiple networks • for systems attached to different networks • using IP protocol • implemented in end systems and routers • routers connect two networks and relays data between them NETE0510
Transport Layer (TCP) • common layer shared by all applications • provides reliable delivery of data • in same order as sent • commonly uses TCP NETE0510
Application Layer • provide support for user applications • need a separate module for each type of application NETE0510
OSI v TCP/IP NETE0510
Operation of TCP and IP NETE0510
Addressing Requirements • two levels of addressing required • each host on a subnet needs a unique global network address • its IP address • each application on a (multi-tasking) host needs a unique address within the host • known as a port NETE0510
Operation of TCP/IP NETE0510
Transmission Control Protocol (TCP) • usual transport layer is (TCP) • provides a reliable connection for transfer of data between applications • a TCP segment is the basic protocol unit • TCP tracks segments between entities for duration of each connection NETE0510
TCP Header NETE0510
User Datagram Protocol (UDP) • an alternative to TCP • no guaranteed delivery • no preservation of sequence • no protection against duplication • minimum overhead • adds port addressing to IP NETE0510
UDP Header NETE0510
IP Header NETE0510
IPv6 Header NETE0510
TCP/IP Applications • have a number of standard TCP/IP applications such as • Simple Mail Transfer Protocol (SMTP) • File Transfer Protocol (FTP) • Telnet NETE0510
Some TCP/IP Protocols NETE0510
Features of Internet Architecture • Does not imply strict layering • Free to bypass the defined transport layers and directly use IP or one of the underlying networks • Hourglass shape • IP serves as the focal point of the architecture – common method for exchanging packets among a wide collection of networks • (According to IETF) If someone propose a new protocol to be included in the architecture, they must produce both a protocol specification and representative implementation of the specification • Ensure that the protocols can be efficiently implemented NETE0510