230 likes | 370 Views
CSCE 201 Computer Networks. Reading Assignment. Required: Security Awareness: Chapter 3 Recommended: Internet Society (ISOC) homepage, http://www.isoc.org Computer Network, http://en.wikipedia.org/wiki/Computer_network Easttom: Chapter 2. Before Internet.
E N D
CSCE 201Computer Networks CSCE 201 - Farkas
Reading Assignment Required: • Security Awareness: Chapter 3 Recommended: • Internet Society (ISOC) homepage, http://www.isoc.org • Computer Network, http://en.wikipedia.org/wiki/Computer_network • Easttom: Chapter 2 CSCE 201 - Farkas
Before Internet • Isolated, local packet-switching networks • only nodes on the same network could communicate • Each network is autonomous: • different services • different interfaces • different protocols CSCE 201 - Farkas
Before Internet (cont) • ARPANET: sponsored by Defense Advanced Research Projects • Agency (DARPA): • 1969: interconnected 4 hosts • 1970: host-to-host protocol: Network Control Protocol (NCP) • 1972: first application: e-mail Stanford Research Institute (SRI) Univ. of California at Santa Barbara (UCSB) Univ. of California at LA (UCLA) Univ. of Utah CSCE 201 - Farkas
Internet Connect Existing Networks: • ARPANET, Packet Radio, and Packet Satellite • NCP not sufficient Develop new protocol • 1970s: Transmission Control Protocol (Kahn and Vinton) • Based on packet switching technology • Good for file transfer and remote terminal access • Divide TCP into 2 protocols • Internet Protocol (IP): addressing and forwarding of packets • Transmission Control Protocol (TCP): sophisticated services, e.g. flow control, recovery • 1980: TCP/IP adopted as a DoD standard • 1983: ARPANET protocol officially changed from NCP to TCP/IP • 1985: Existing Internet technology • 1995: U.S. Federal Networking Council (FNC) define the term Internet CSCE 201 - Farkas
Goals (Clark’88) Connect existing networks • Survivability • Support multiple types of services • Must accommodate a variety of networks • Allow distributed management • Allow host attachment with a low level of effort • Be cost effective • Allow resource accountability CSCE 201 - Farkas
Internet Challenge • Interconnected networks differ (protocols, interfaces, services, etc.) • Solutions: • Reengineer and develop one global packet switching network standard: not economically feasible • Have every host implement the protocols of any network it wants to communicate with: too complex, very high engineering cost • Add an extra layer: internetworking layer • Hosts: one higher-level protocol • Network connecting use the same protocol • Interface between the new protocol and network CSCE 201 - Farkas
Layering • Organize a network system into logically distinct entities • the service provided by one layer is based only on the service provided by the lower level entity CSCE 201 - Farkas
Without Layering • Each application has to be implemented for every network technology! FTP HTTP SMTP Application Coaxial cable Fiber optic Transmission Media CSCE 201 - Farkas
HTTP With Layering • Intermediate layer provides a unique abstraction for various network technologies FTP SMTP Application Intermediate layer Coaxial cable Fiber optic Transmission Media CSCE 201 - Farkas
Layering • Advantages • Modularity – protocols easier to manage and maintain • Abstract functionality –lower layers can be changed without affecting the upper layers • Reuse – upper layers can reuse the functionality provided by lower layers • Disadvantages • Information hiding – inefficient implementations CSCE 201 - Farkas
TCP/IP Networking Model • TCP/IP has a different layered model Application Layer • Transport Layer (TCP) • Error Correction • Reliable Connection • Internetwork Layer (IP) • WAN Connectivity • Unreliable Datagram Service • Network Access Layer • Physical Connection • LAN Connection CSCE 201 - Farkas
Network Access Layer • Responsible for physical connection • Shape • Size • Voltages • Responsible for rules of how to put bits on the “wire” • These are the building blocks for the network • The goal of the physical layer is to move information across one “hop” CSCE 201 - Farkas
Internet Layer • Transports data from one end-user system to another end-user systems by hopping across as many physical connections as necessary • Provides a mechanism to connect many LANs together effectively • Connectionless and unreliable datagram protocol • Protocols: • Internet Protocol • Routing Protocol • Supporting Protocol CSCE 201 - Farkas
IP Header 0 4 8 16 19 31 Version HLen TOS Length Identification Flags Fragment offset • Comments • HLen – header length only in 32-bit words (5 <= HLen <= 15) • TOS (Type of Service): now split in • Differentiated Service Field (6 bits) • remaining two bits used by ECN (Early Congestion Notification) • Length – the length of the entire datagram/segment; header + data • Flags: Don’t Fragment (DF) and More Fragments (MF) • Fragment offset – all fragments excepting last one contain multiples of 8 bytes • Header checksum - uses 1’s complement 20 bytes TTL Protocol Header checksum Source address Destination address Options (variable) CSCE 201 - Farkas
IP Addresses • IP provides logical address space and a corresponding addressing schema • IP address is a globally unique or private number associated with a host network interface • Every system which will send packets directly out across the Internet must have a unique IP address • IP addresses are based on where station is connected • IP addresses are controlled by a single organization - address ranges are assigned • They are running out of space! CSCE 201 - Farkas
Routing Protocols • Enable routing decisions to be made • Manage and periodically update routing tables, stored at each router • Autonomous collection of routers: • Under single administration • Use same routing protocol: Interior Gateway Protocol (IGP) • Use Exterior Gateway Protocol (EGP) to communicate other systems • Router : “which way” to send the packet closer. (Keep routing table small and allow to handle unlimited number of systems.) • Protocol types: • Reachability • Distance vector CSCE 201 - Farkas
Supporting Protocols • Handle specific tasks • Address Resolution Protocol (ARP) • Reverse Address Resolution Protocol (RARP) • Internet Control Message Protocol (ICMP) • Internet Group Management Protocol (IGMP) CSCE 201 - Farkas
The Domain Name System • Each system connected to the Internet also has one or more logical addresses. • Unlike IP addresses, the domain address have no routing information - they are organized based on administrative units • There are no limitations on the mapping from domain addresses to IP addresses CSCE 201 - Farkas
Domain Name Resolution • Domain Name Resolution: looking up a logical name and finding a physical IP address • There is a hierarchy of domain name servers • Each client system uses one domain name server which in turn queries up and down the hierarchy to find the address • If your server does not know the address, it goes up the hierarchy possibly to the top and works its way back down CSCE 201 - Farkas
Transport Layer (TCP) • Present a reliable end-to-end pipe to the application • Data either arrives in the proper order or the connection is closed • Keeps buffers in the sending and destination system to keep data which has arrived out of order or to retransmit if necessary • Provides individual connections between applications CSCE 201 - Farkas
SYN, SeqNum = x SYN and ACK, SeqNum = y and Ack = x + 1 ACK, Ack = y + 1 TCP Connection Establishment • Three-way handshake • Goal: agree on a set of parameters: the start sequence number for each side Server Client (initiator) CSCE 201 - Farkas
Application Layer • Uses the reliable TCP connections to accomplish useful work over the network • client-server applications • standard applications • telnet (port 23) • mail (port 25) • finger (port 79) • ftp (port 21) • Each application uses a “port” and a protocol • Each port can have many connections CSCE 201 - Farkas