CPEG514 Advanced Computer Networks. Atef Abu Salim University of Nizwa Spring 2013/2014

Similar documents
Data and Computer Communications. Chapter 2 Protocol Architecture, TCP/IP, and Internet-Based Applications

The OSI Model. Open Systems Interconnection (OSI). Developed by the International Organization for Standardization (ISO).

Data Communication and Network. Introducing Networks

ITEC 3800 Data Communication and Network. Introducing Networks

Network Reference Models

Chapter 2 - Part 1. The TCP/IP Protocol: The Language of the Internet

Applied Networks & Security

Computer Communication & Networks / Data Communication & Computer Networks Week # 03

Chapter 2 Communicating Over the Network

Networking and Internetworking 1

Chapter 2 Network Models 2.1

Copyleft 2005, Binnur Kurt. Objectives

Lecture 17 Overview. Last Lecture. Wide Area Networking (2) This Lecture. Internet Protocol (1) Source: chapters 2.2, 2.3,18.4, 19.1, 9.

Computer Networks (Introduction to TCP/IP Protocols)

Defining Networks with the OSI Model. Module 2

Interconnecting Networks with TCP/IP. 2000, Cisco Systems, Inc. 8-1

Data & Computer Communication

Network+ Guide to Networks 6 th Edition. Chapter 4 Introduction to TCP/IP Protocols

Networking Fundamentals

System Programming. Introduction to computer networks

Introduction to Open System Interconnection Reference Model

Data and Computer Communications

Objectives. Upon completion you will be able to: Understand how the Internet came into being

Guide to Networking Essentials, 6 th Edition. Chapter 5: Network Protocols

OSI Model. Teran Subasinghe MBCS, Bsc.(Hons) in Computer Science - University of Greenwich, UK

6 Computer Networks 6.1. Foundations of Computer Science Cengage Learning

Networking Models OSI Model Created by International Organization Standardization

Network Models. Behrouz A. Forouzan Data communication and Networking Fourth edition

Internetworking Concepts Overview. 2000, Cisco Systems, Inc. 2-1

Business Data Communications and Networking

Lecture 11: Networks & Networking

Chapter 2 Network Models 2.1

Network Protocols - Revision

IT 4504 Section 4.0. Network Architectures. 2008, University of Colombo School of Computing 1

Chapter 7. Local Area Network Communications Protocols

Layered Architecture

Networking Basics. EC512 Spring /15/2015 EC512 - Prof. Thomas Skinner 1

Layering in Networked computing. OSI Model TCP/IP Model Protocols at each layer

TRANSMISSION CONTROL PROTOCOL. ETI 2506 TELECOMMUNICATION SYSTEMS Monday, 7 November 2016

EITF25 Internet Techniques and Applications L7: Internet. Stefan Höst

Networking and Internetworking 1

CS-461 Internetworking. Dr. Mohamed Aboutabl

Introduction to Networking

Introduction to computer networking

ECE 650 Systems Programming & Engineering. Spring 2018

Need For Protocol Architecture

Communicating over the Network

Network+ Guide to Networks 5 th Edition. Chapter 4 Introduction to TCP/IP Protocols

Chapter 4: Network Layer

TCP/IP Networking Basics

Computer Network Addressing. The TCP/IP Layers and Addresses. Topics. The Internet Communication. The TCP/IP Layers and Addresses IP Address

TCP/IP Protocol Suite and IP Addressing

Switching Networks (Fall 2010) EE 586 Communication and. August 27, Lecture 2. (modified by Cheung for EE586; based on K&R original) 1-1

ES623 Networked Embedded Systems

Network Layers. Standardization Cruelty 2009/08/12. (C) Herbert Haas

The Internet Protocol (IP)

Imi :... Data:... Nazwisko:... Stron:...

Internet 최양희서울대학교컴퓨터공학부. MMlab 1

Special expressions, phrases, abbreviations and terms of Computer Networks

CSC 546: Client/Server Fundamentals. Fall Major client/server protocols

COMS Introduction to Computers. Networking

Review of Important Networking Concepts

Introduction to TCP/IP

Need For Protocol Architecture

Data Link Layer. Our goals: understand principles behind data link layer services: instantiation and implementation of various link layer technologies

Networking Applications

Interconnecting Networks with TCP/IP

Raj Jain. The Ohio State University Columbus, OH

Data Communication & Computer Networks MCQ S

Introduction to Protocols

Computer Network : Lecture Notes Nepal Engineering College Compiled by: Junior Professor: Daya Ram Budhathoki Nepal Engineering college, Changunarayan

Computer Networks - Xarxes de Computadors

ELC 537 Communication Networks

THE OSI MODEL. Application Presentation Session Transport Network Data-Link Physical. OSI Model. Chapter 1 Review.

Network Architecture Models

Communication Networks

Fundamentals of Networking. OSI & TCP/IP Model. Kuldeep Sonar 1

COMPONENTS OF DATA COMMUNICATION

Chapter 3: Network Protocols and Communications CCENT Routing and Switching Introduction to Networks v6.0 Instructor Planning Guide

E-Commerce. Infrastructure I: Computer Networks

MODULE: NETWORKS MODULE CODE: CAN1102C. Duration: 2 Hours 15 Mins. Instructions to Candidates:

Operating Systems. 16. Networking. Paul Krzyzanowski. Rutgers University. Spring /6/ Paul Krzyzanowski

Reference Models. 7.3 A Comparison of the OSI and TCP/IP Reference Models

Chapter 16 Networking

Chapter 3: Network Protocols and Communications

Network Models. Presentation by Dr.S.Radha HOD / ECE SSN College of Engineering

Guide to Networking Essentials, 6 th Edition. Chapter 6: Network Reference Models and Standards

Packet Switching, Layer Models and Protocol Suites

DATA COMMUNICATION AND NETWORKS

Computer Networks. Introduction to Network. Dr. Adel Gaafar Abd Elrahim

Module 15: Network Structures

Business Data Networks and Security 10th Edition by Panko Test Bank

Network.... communication system for connecting end- systems. End-systems a.k.a. hosts PCs, workstations dedicated computers network components

Introduction to internetworking, OSI, TCP/IP and Addressing.

Unit C - Network Addressing Objectives Purpose of an IP Address and Subnet Mask Purpose of an IP Address and Subnet Mask

What is a Network? TCP / IP. The ISO OSI Model. Protocols. The TCP/IP Protocol Suite. The TCP/IP Protocol Suite. Computer network.

Network Layer: Control/data plane, addressing, routers

Networking for Data Acquisition Systems. Fabrice Le Goff - 14/02/ ISOTDAQ

EEC-484/584 Computer Networks

Chapter 2. Communicating Over The Network. CCNA1-1 Chapter 2

Transcription:

CPEG514 Advanced Computer Networks Atef Abu Salim University of Nizwa Spring 2013/2014

Today s Class Topics Course Syllabus Computer Networks LANs and WANs The Internet Protocols, Layers and Interfaces Reference Models Addressing

Course Overview See Syllabus Course Notes (PowerPoint): Course notes available on edwwave. It is your responsibility to download and print a copy of the slides before coming to class.

Course Goals, Cont. What do you want to get out of this course? E-mail: atef@unizwa.edu.om

The Client-Server Model Client Machine Client Process Server Machine Server Process Network Request Reply

Networks Communication between semi-autonomous computers Attached to host system by an adapter

LANs and WANs Local Area Networks High Data Access Rate (100 Mbps 10 Gbps) Limited Geographic Boundaries Data delivery via broadcast (traditional) or switching (modern switched LANs) Wide Area Networks Lower Data Access Rate (56 Kbps 155 Mbps) No Geographic Limits Data delivery via routing

LAN Example

WAN Example

What is the Internet? a collection of networks (Autonomous Systems) using the Internet Protocol (IP). Each Autonomous System (AS), typically owned by an Internet Service Provider (ISP), consists of a collection of IP routers that may be regional, national or international in scope.

Internet today Figure 1.1

ISP Interconnection ISPs can interconnect their networks via: Public Peering Points called Network Access Points (NAPs) or Metropolitan Area Exchanges (MAEs) Private Peering arrangements (direct communications circuits between ISP networks).

Who Makes Money? End Users and Businesses pay ISPs to provide IP routing services. Regional ISPs pay National ISPs to get inter-isp routing (peering) at NAPs ISPs pay telecommunications carriers for leased data circuits to interconnect their IP routers

Who runs the Internet? Decentralized, distributed, chaotic growth Standards: International Standards Organization (ISO), Internet Engineering Task Force (IETF), W3C, etc. Names, Numbers: Internet Corporation for Assigned Names and Numbers (ICANN) Operational coordination: IEPG (Internet Engineering Planning Group) Network: ISPs (Internet Service Providers), NAPs, MAEs Cabling: Telephone companies Content: millions of companies, universities & individuals

Protocols Protocols: a set of rules governing the format (syntax), meaning (semantics) and timing of the information that are exchanged among peer entities within a layer. Protocol Data Unit (PDU): Header Data

Protocol Architectures Protocol architecture: The structure of components, their interfaces, and the principles and guidelines governing their design and evolution. Layered Architecture: - Decomposes complicated processes in simpler functions - Creates discrete modules which are almost independent except for the interfaces between them Application Transport Network Access Application Protocol Transport Protocol Network Access Protocol Communication Network Application Transport Network Access

Protocol Layering Layered Models standardize Functions performed by each layer The protocol (headers, procedures, timing) followed by peer layers on different hosts The interfaces between adjacent layers on the same host (standard function calls to request services up or down the stack). Protocols do not standardize implementation (O.S., hardware/software platform, etc.)

Protocol Layering

ISO OSI Model (ISO = International Standard Organization, OSI = Open Systems Interconnection) Also data compression and encryption Synchronization mechanism for inserting check points Dialog control halfduplex or full-duplex Packets Frames End-to-end Error and Flow Control Error and Flow Control over a single link Bits

Figure 2-2 OSI Layers

The OSI Model Net1 Net2 Net3 Host 1 Router Router Host 2. Layer 7 Application Application Protocol Application Unit Exchanged APDU 6 Presentation Presentation Protocol Presentation PPDU 5 Session Session Protocol Session SPDU 4 Transport Transport Protocol Communications Subnet Boundary Transport TPDU 3 Network Network Network Network Packet 2 DL1 DL1 DL2 DL2 DL3 DL3 Frame 1 PH1 PH1 PH2 PH2 PH3 PH3 Bit Host A Host B

Protocol Headers Each sending protocol layer entity (software or hardware) may add a protocol header to the data message as it passes down the stack. (Layer 2 also adds trailer) This header encapsulates the control information needed by the protocol peer entity that removes and acts upon the header information at the receiving end.

Figure 2-3

TCP/IP Model

TCP/IP Model vs. OSI Model Network Access

Web Browsing Stack My computer is running the following protocols: - Application Layer = HTTP (Netscape) - Transport Layer = TCP - Network Layer = IP - Data Link Layer = Ethernet - Physical Layer = Ethernet

WinNT OS A Layering Example WinNT PC running Netscape Linux Server running Apache User clicks http://www.depaul.edu Netscape Software (Application Layer) Create GET Request in HTTP format Receive and Process GET Request Apache Software (Application Layer) TCP Software (Transport Layer) IP Software (Network Layer) Ethernet Driver (DL) Ethernet Card (PHYS) Add TCP Header Add IP Header Add Ethernet Header & Trailer Remove TCP Header Remove IP Header Remove Ethernet Header & Trailer TCP Software (Transport Layer) IP Software (Network Layer) Ethernet Driver (DL) Ethernet Card (PHYS) LINUX OS Ethernet Trailer HTTP Request TCP Header IP Header Ethernet Header

Application Layer Protocol: HTTP HTTP implemented in browser software HTTP Protocol Example: Client: File Request Client sends request message in format: GET <file name> Server: Response to GET request Server message format: HTTP/1.0 200 MIME-Version: 1.0 Server: CERN/3.0 Content-Type: text/html Content-Length: 8247 <file contents>

Application Layer Interfaces: HTTP Interfaces: Interface to user is keyboard or mouse clicks. Interface to Transport Layer (TCP) interface is WINSOCK function calls which are read, write functions to pass data from and to the TCP software.

Transport Layer Protocol: TCP -TCP software is implemented by Operating System (i.e.,windows 2000/XP, Linux, UNIX) Data from Application Layer: assembled into segments Adds TCP header (seq#, ACK bits, etc) Starts timer Calls IP_SEND primitive data to IP layer Wait for TCP ACK or timeout Data from IP Layer: Check data for errors Create TCP ACK message Pass received data up to Application Layer

Network Layer Protocol: IP - IP software is implemented by Operating System (i.e.,windows 2000/XP, Linux, UNIX) Data from Transport Layer: Adds IP header (source IP address, dest IP address, etc.) Pass data to Ethernet driver software (Data Link Layer) Data from Data Link Layer: Check IP header to verify that destination address is correct Remove IP header Pass data up to TCP software

Data Link Protocol: Ethernet -Ethernet Medium Access Control (MAC) protocol is implemented by the Ethernet Network Card (NIC) and driver software Data from IP Layer: Adds Ethernet header (source MAC addr, dest MAC addr, etc.) Wait until network is quiet (CSMA) Pass data to Ethernet PHY hardware for transmission If PHY indicates COLLISION, back-off and try again later. Data from Ethernet PHY hardware: Check Ethernet header to verify that destination address matches this network card hardware Remove Ethernet header Pass data up to IP software

Physical Layer Protocol: Ethernet -Ethernet Physical (PHY) protocol is implemented by the Ethernet Network Card (NIC) hardware; Data from Ethernet MAC Layer: For each bit, generate appropriate voltages on network cable using Manchester coding standard If COLLISION detected, notify MAC layer Arriving data signals on Ethernet wire : Decode each received signal as 0 or 1 Store each bit into a buffer When network is quiet, pass the received data up to the Ethernet MAC Layer

Client Send 1. User types "http://www.unizwa.edu.om/test.html. 2. IE/Netscape (L5) determines IP address for "www.unizwa.edu.om/test.html" and requests TCP connection to server. 3. IE/Netscape (L5) passes "GET test.html HTTP/1.0" to TCP (L4). 4. TCP (L4) adds TCP header and passes to IP (L3). 5. IP (L3) adds IP header and passes to Ethernet driver. 6. Ethernet driver adds Ethernet header and trailer and passes data onto physical Ethernet card for transmission. 7. Ethernet card transmits data frame.

Server Receive 1. Server Ethernet card (L1) picks up data frame, passes to Ethernet driver. 2. Ethernet driver (L2) removes Ethernet header, passes to IP software. 3. IP software (L3) verifies IP destination address, removes IP header, passes to TCP software. 4. TCP (L4) checks for errors, sends a TCP ACK back to client, passes data up to Apache server (L5). 5. Apache server examines GET request, reads file off disk, generates response message.

Figure 2-15 SCTP

Addressing Physical/MAC Address- unique address of NIC. support for multicast and broadcast physical addresses. a 48-bit address. Internet Address- IP number of computer. Physical addresses cannot be tracked by all routers, so networks are hierarchically organized by IP address. The IP address resolves into a physical address. It is 32 bits. No two computers can have the same IP address. Port Address- Identifies the process on the host computer. Since most computers run several applications at a time (email, web, etc), getting the data to the computer is not enough. The data has to get to the correct process (software) on the computer. Other address: domain name (maps to IP address).

Figure 2-17 Relationship of layers and addresses in TCP/IP Example: web browser implementing HTTP Interface. Eg. WINSOCK on PCs Eg. TCP port 80 for web server Implemented in TCP, UDP and SCTP software. HTTP uses TCP. TCP UDP SCTP Eg. 140.192.33.37 (32- bit) Implemented in IP software Eg. Ethernet Medium Access Control (MAC) implemented in NIC card (Network Interface Card) and driver software Eg. Ethernet address (48-bit) Eg. Ethernet PHY layer. Implemented in NIC card

Layer 2 MAC Addresses Carried in Layer 2 header (Ethernet, etc.) Associated with LAN card hardware -- burned into LAN card during manufacturing Determines which card on same LAN will copy (receive) the broadcast data frame. 6 bytes 2-bit control field 22-bit manufacturer ID 24-bit serial number Identifies some destination device on the same subnet (i.e. same LAN). Cannot identify destination device across any router. It is a local address.

Figure 2-18 Physical Addresses

Layer 3 IP Addresses Carried in Internet Protocol header Identifies a particular host (computer), which may be on any subnet or network. It is a global address. 4 bytes split into IP Network IP Host Stored by operating system. Assigned by: ICANN/IANA or ISP (Network part) Local network manager (Host part)

Figure 2-19 IP Addresses Note: We commonly uses names such as www.cs.depaul.edu (called Domain Names). To translate from names to IP addresses, needs to use DNS (Domain Name Service) implemented at the Application level.

Layer 4 TCP Ports Carried in TCP header Identifies a particular user/server process 2 byte port codes Well-Known Port Numbers assigned by ICANN / IANA and stored in services file Examples: HTTP = port 80 File Transfer (FTP) = port 21 E-mail (SMTP) = port 25 Remote login (Telnet) = port 23

Figure 2-20 Port addresses P

Addressing Example Dest. IP Addr = 140.192.81.6 Dest. Port = 80 Dest. Eth Addr = 3b:ac:55:6d:e1:25 Ethernet Trailer GET DEFAULT.HTM HTTP/1.0 TCP Header IP Header Ethernet Header Browser Web Server

Figure 4.1 Dotted Decimal Notation Figure 4.6 Classful IP Addresses Class A: Large networks Class B: Medium networks Class C: Small networks Hostid with all 0 s or all 1 s are special.

Figure 4.5 00000000 0 0 01111111 1 1 10000000 0 0 10111111 1 1 11000000 0 0 11011111 1 1

Figure 4.12 Multihomed devices

Figure 4.13 Network addresses: Network ID + All 0 s hostid is commonly referred to as a network address

Figure 4.14 Direct broadcast address

Figure 4.15 limited broadcast address

Figure 4.16 this host on this network address Provide initial configuration information

Figure 4.17 Specific host on this network

Figure 4.18 Loopback address

Private Networks 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0-192.168.255.255 Note: the above addresses should not be used on the Internet. Private addresses Network Address Translation (NAT) Global IP addresses