Computer networks -- 2007-2008 -- info.uvt.ro/Course 6
Quick links:
- front;
- courses 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13;
- laboratories agenda, 1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, evaluation, tools, repository.
Network layer
edit- functions:
- it delivers messages to and from the transport layer;
- it decides on which data link to send them;
- it handles network congestion;
- goals:
- the transport layer should be independent on the routing technology;
- the transport layer should be shielded from the number, type, and topology of the routers;
- the network addresses should be uniform across all types of physical networks (LAN, WLAN, etc.);
- concepts:
- routing;
- network address;
- datagram, packet;
- types of services:
- connection oriented or connection less?
- ATM is connection oriented;
- IP is connection less;
- issues:
- getting one message from the source to the destination may involve multiple hops;
- we must know the physical topology in order to choose the correct route;
- congestion;
- quality of service;
- links:
Internet Protocol
edit- history:
- developed by the USA DoD Department of Defense;
- it was devised to preserve network integrity even in the event of a catastrophic war;
- it bares the name TCP/IP Suite -- Transmission Control Protocol / Internet Protocol;
- it does not have a formal unique document describing it; thus it is not standardized in the way the OSI model is;
- links:
Layers
edit- application -> application, presentation, session from OSI:
- examples: HTTP, FTP, SMTP, POP3, etc.;
- host-to-host, or transport -> transport from OSI:
- creating reliable end-to-end communication;
- ensuring error-free delivery;
- packet sequencing;
- packet retransmission;
- examples: TCP, UDP, SCTP, etc.;
- internet -> network from OSI:
- logical transmission of packets;
- addressing;
- packet segmentation and reassembly;
- routing among multiple networks;
- various control protocols: ICMP, ARP, RARP, IGMP, etc;
- host-to-network, or network access -> data link, and physical from OSI:
- monitors data exchange between the host and the network;
- it is left unspecified by any standard;
- usually hardware addressing (for example MAC);
- examples: PPP, Ethernet, Token Ring, etc.;
IP addressing
edit- prerequisites:
- conversions between binary, octal, decimal and hexadecimal;
- nibble -- 4 bits;
- byte / octet -- 8 bits;
- IP address:
- a numeric identifier assigned to each host on an IP network;
- it designates the specific location of a host on the network;
- it is an a software / logical address (as oposed to the MAC hardware address);
- it was designed to allow host to host communication that spans over multiple networks with different physical types;
- it is composed of 4 bytes (for IPv4);
- it provides about 4.3 billion distinct addresses;
- it can be seen as a hierarchical addressing scheme;
- it has two parts: network address and host address;
- discussion about hierarchical and flat addressing schemes:
- routing efficiency;
- routing table sizes;
- network, subnet, host scheme;
- comparison with telephony numbering system;
- types of IP addresses:
- network address;
- broadcast address;
- multicast address;
- IP address structure:
- network address:
- uniquely identifies each network on the Internet;
- every host on the same network has the same network address;
- host (node) address:
- uniquely identifies each node inside a network;
- the split is based on network classes;
- network address:
- links:
Network classes
edit- miscellaneous;
- reasons;
- multiple classes based on the needed size;
- split is done based on the leading-bits section;
- class A:
- starts with the bit 0;
- between 0.x.x.x and 127.x.x.x;
- network.node.node.node;
- 128 networks (only 126 usable);
- about 16 million nodes per network;
- class B:
- starts with the bits 10;
- between 128.x.x.x and 191.x.x.x;
- network.network.node.node;
- about 16 thousand networks;
- about 65 thousand nodes per network;
- class C:
- starts with the bits 110;
- between 192.x.x.x and 223.x.x.x;
- network.network.network.node;
- about 2 million networks;
- 256 nodes per network (only 254 usable);
- class D:
- starts with 1110;
- between 224.x.x.x and 239.x.x.x;
- class E:
- starts with 1111;
- between 240.x.x.x and 255.x.x.x;
- network address space exhaustion;
- links:
Special purpose addresses
edit- all 0 -- 0.0.0.0 -- any network;
- all 1 -- 255.255.255.255 -- any host in the current network -- the global broadcast address;
- 127.0.0.1 -- local loopback address;
- network part plus all 0 for host part -- the network's address;
- network part plus all 1 for host part -- all network's hosts -- the network broadcast address;
Private addresses
edit- for local enterprise use;
- not routable through the Internet, thus outside the local enterprise network;
- could be used as a security measure;
- it goes hand in hand with NAT;
- addresses:
- 10.x.x.x -- class A;
- 172.16.x.x -- class B;
- 192.168.x.x -- class C;
- links:
NAT
edit- used to translate between private and public addresses;
- terminology:
- inside (private or local) network -- the network subjected to NAT;
- outside (public or global) network -- the public networks -- the Internet;
- before any packets are frowarded (routed) the private address is transformed into a public one;
- types:
- Static NAT: one-to-one permanent mapping between a private and a public address;
- Dynamic NAT: just like the Static NAT, but the mapping is done as needed;
- Overloading:
- maps more than one private address to one public address at the same time;
- its also known as PAT -- port address translation;
- links:
Subnetting
edit- it allows us to break a large network address into smaller networks;
- advantages:
- reduced network traffic;
- optimized network performance;
- simplified management;
- allows localization of computers;
- how it works:
- we take some left-most bits from the host address part and reserve them for a subnetwork address;
- subnet mask, or network mask:
- used to determine the network and host addresses from the IP address;
- a 32 bit word in the form 1...10...0 -- only ones followed by only zeros;
- can be written as x.x.x.x;
- examples:
- class A mask: 255.0.0.0;
- class B mask: 255.255.0.0;
- class C mask: 255.255.255.0;
- steps:
- determining the number of subnetworks;
- determining the number of hosts for each subnetwork;
- create network mask -- all the subnetworks will have the same mask;
- determine the IP address ranges for each subnetwork;
- links:
CIDR and VLSM
edit- CIDR -- Classless Inter-Domain Routing;
- VLSM -- Variable Length Subnet Masks;
- used to split the entire IP address space into blocks;
- CIDR format x.x.x.x/n -- where n is between 0 and 32 and represents the number of bits that denote the network address part;
- subnetting implies that all the subnetworks have the same network mask;
- VLSM offers the possibility for subnetworks to have different network masks;
- examples:
- for class A: 10.0.0.0/8;
- for class B: 172.16.0.0/16;
- for class C: 192.168.x.0/24;
- links:
IP addressing helpful protocols
editDNS
edit- application layer protocol used to determine an IP address from a name;
- FQDN -- Fully Qualified Domain Name;
- it provides a hierarchical naming scheme -- domains are nested;
- it could be seen as a distributed database;
- it delegates control for lower domains to end users (usually enterprises);
- links:
DHCP
edit- usually used to determine the IP address and netmask of a host at system start-up;
- it could provide additional information:
- DNS server;
- WINS server;
- local DNS domain;
- links: