210 likes | 374 Views
ECE 4400:427/527 - Computer Networks Spring 2014. Dr. Nghi Tran Department of Electrical & Computer Engineering. Lecture 3: Network Architectures. Some Discussions. We know that there are substantial requirements for NETWORK DESIGN
E N D
ECE 4400:427/527 - Computer NetworksSpring 2014 Dr. Nghi Tran Department of Electrical & Computer Engineering Lecture 3: Network Architectures ECE 4400:427/527
Some Discussions • We know that there are substantial requirements for NETWORK DESIGN • General, cost-effective, fair, robust connectivity among large computers/users • Should be manageable by humans of varying levels of skills • Network designers have developed general blueprints referred to as NETWORK ARCHITECTURES to deal with complexity • Guide the design and implementation of networks ECE 4400:427/527
Outline • In this lecture, we introduce some central ideas common to all network architecture • Layering • Protocols • We also consider two most widely referenced architectures: • The OSI -7 –layer • Internet architecture ECE 4400:427/527
Layering • Communication network is so complex • Contain many pieces: hosts, switching devices, channels, etc • How we can manage complexity: • Using divide and conquer approach: Idea of Layering ECE 4400:427/527
Example of Air Travel • Travelling contain a series of steps ECE 4400:427/527
Layering of Air Travel ticket ticket (purchase) baggage (check) gates (load) runway (takeoff) airplane routing ticket (complain) baggage (claim gates (unload) runway (land) airplane routing baggage gate airplane routing airplane routing takeoff/landing airplane routing departure airport intermediate air-traffic control centers arrival airport Layers: each layer implements a service • via its own internal-layer actions • relying on services provided by layer below ECE 4400:427/527
Why Layering? Dealing with complex systems: • Explicit structure allows identification, relationship of complex system’s pieces • Layered reference model for discussion • Modularization eases maintenance, updating of system • change of implementation of layer’s service transparent to rest of system • e.g., change in gate procedure doesn’t affect rest of system • Layering considered harmful? ECE 4400:427/527
Layering Abstraction Layer: A set of functionalities encapsulated in an object that can be used by other network components Why layering? Think complexity and common services Layers consist of protocols ECE 4400:427/527
Protocols • Protocol defines the interfaces between the layers in the same system and with the layers of peer system • Building blocks of a network architecture • Each protocol object has two differentinterfaces • service interface: operations on this protocol • peer-to-peer interface: messages exchanged with peer ECE 4400:427/527
Protocols Protocols in each layer have Service interface with upper layer/lower layers Peer-to-peer interface with host on same layer ECE 4400:427/527
Hierarchical Layer Structure Layering implies the use of a layer hierarchy ECE 4400:427/527
OSI 7-Layer Model • First formal way defined to connect computers • One or more protocols implement the functionality assigned to a given layer • Acts like a reference model rather than a real-world protocol graph • First three layers are implemented in all nodes The OSI 7-layer Model OSI – Open Systems Interconnection ECE 4400:427/527
Description of Layer • Physical Layer • Handles the transmission of raw bits over a communication link • Data Link Layer • Collects a stream of bits into a larger aggregate called a frame • Network adaptor along with device driver in OS implement the protocol in this layer • Frames are actually delivered to hosts • Network Layer • Handles routing among nodes within a packet-switched network • Unit of data exchanged between nodes in this layer is called a packet The lower three layers are implemented on all network nodes ECE 4400:427/527
Description of Layer • Transport Layer • Implements a process-to-process channel • Unit of data exchanges in this layer is called a message • Session Layer • Provides a name space that is used to tie together the potentially different transport streams that are part of a single application • Presentation Layer • Concerned about the format of data exchanged between peers • Application Layer • Standardize common type of exchanges The transport layer and the higher layers typically run only on end-hosts and not on the intermediate switches and routers ECE 4400:427/527
The Internet Architecture • Application: supporting network applications • FTP, SMTP, HTTP • Transport: process data transfer • TCP, UDP • Network: routing of datagrams from source to destination • IP, routing protocols • Link: data transfer between neighboring network elements • Ethernet, 802.111 (WiFi), PPP • Physical: bits “on the wire” Application Transport Network Link Physical ECE 4400:427/527
Internet Architecture vs OSI • Presentation: allow applications to interpret meaning of data, e.g., encryption, compression, machine-specific conventions • Session: synchronization, checkpointing, recovery of data exchange • Internet stack “missing” these layers! • These services, if needed, must be implemented in application Application Presentation Session Transport Network Link Physical ECE 4400:427/527
The Internet: Protocol Encapsulation M Ht M source Ht message application transport network link physical Hn Hn Ht M segment Hl Hn Ht M datagram frame link physical switch network link physical Hn Ht M destination Hl Hn Ht M Hn Ht M M application transport network link physical Ht M Hn Ht M Hl Hn Ht M router ECE 4400:427/527
Protocol Encapsulation: Example • A in Office 1 sends to B in Office 2 a memo • Memo: Application-layer message • Memo needs to placed on an interoffice envelope and A needs to write an address: • Envelope: Transport-layer segment, with header is A’s address • Envelope headed to sending office mailroom and placed in a postal envelope; suited for public postal service: Datagram • Sending to receiving office mailroom: De-encapsulation begins. B will finally get the memo. ECE 4400:427/527
The Internet: Alternative View FTP HTTP TFTP DNS TCP UDP IP Net 1 Net 1 Ethernet FDDI TCP:Transmission Control Protocol UDP: User Datagram Protocol IP: Internet Protocol FTP: File Transfer Protocol HTTP: Hypertext Transport Protocol TFTP: Trivial File Transfer Protocol ECE 4400:427/527
The Internet: Alternative View • Subnetwork:Involve sublayers • Internet Protocol: Support the interconnection of multiple networking technologies into a single, logical internetwork • TCP/UDP: Two main protocols of third layer • TCP: provide a reliable byte-stream channel • UDP: provide an unreliable datagram delivery channel • Sometimes called end-to-end protocols • Application • We will step by step go through those layers/protocols ECE 4400:427/527
TCP vs. UDP • Source: Skullbox.net • TCP: most commonly used protocol on the Internet • UDP: • Important data? • For streaming audio and video; UDP packets in Denial of Service (DoS); also implemented in trojan horse viruses etc. • Again, we will step by step go through all these ECE 4400:427/527