OSI Reference Model. Application Layer. Presentation Layer. Session Layer. Transport Layer. Chapter 4: Application Protocols.



Similar documents
8.2 The Internet Protocol

Technical Support Information Belkin internal use only

Indian Institute of Technology Kharagpur. TCP/IP Part I. Prof Indranil Sengupta Computer Science and Engineering Indian Institute of Technology

Savera Tanwir. Internet Protocol

Address Resolution Protocol (ARP), Reverse ARP, Internet Protocol (IP)

Ethernet. Ethernet. Network Devices

Lecture Computer Networks

Overview of TCP/IP. TCP/IP and Internet

Protocols. Packets. What's in an IP packet

Course Overview: Learn the essential skills needed to set up, configure, support, and troubleshoot your TCP/IP-based network.

2. IP Networks, IP Hosts and IP Ports

Computer Networks 1 (Mạng Máy Tính 1) Lectured by: Dr. Phạm Trần Vũ

Introduction to IP v6

Internet Protocol: IP packet headers. vendredi 18 octobre 13

Chapter 3. TCP/IP Networks. 3.1 Internet Protocol version 4 (IPv4)

IP - The Internet Protocol

Basic Networking Concepts. 1. Introduction 2. Protocols 3. Protocol Layers 4. Network Interconnection/Internet

Lecture 15. IP address space managed by Internet Assigned Numbers Authority (IANA)

Datacommunication. Internet Infrastructure IPv4 & IPv6

Guide to Network Defense and Countermeasures Third Edition. Chapter 2 TCP/IP

TCP/IP Basis. OSI Model

Future Internet Technologies

Network Layer IPv4. Dr. Sanjay P. Ahuja, Ph.D. Fidelity National Financial Distinguished Professor of CIS. School of Computing, UNF

Lehrstuhl für Informatik 4 Kommunikation und verteilte Systeme. Auxiliary Protocols

The TCP/IP Reference Model

We Are HERE! Subne\ng

This tutorial will help you in understanding IPv4 and its associated terminologies along with appropriate references and examples.

IP Addressing Introductory material.

Transport and Network Layer

IP Network Layer. Datagram ID FLAG Fragment Offset. IP Datagrams. IP Addresses. IP Addresses. CSCE 515: Computer Network Programming TCP/IP

IP Addressing. IP Addresses. Introductory material.

Chapter 3: Review of Important Networking Concepts. Magda El Zarki Dept. of CS UC Irvine

RARP: Reverse Address Resolution Protocol

Interconnection of Heterogeneous Networks. Internetworking. Service model. Addressing Address mapping Automatic host configuration

PART IV. Network Layer

Internet Protocols. Addressing & Services. Updated:

Lecture 8. IP Fundamentals

IP address format: Dotted decimal notation:

IPv6 Fundamentals Ch t ap 1 er I : ntroducti ti t on I o P IPv6 Copyright Cisco Academy Yannis Xydas

Computer Networks. Lecture 3: IP Protocol. Marcin Bieńkowski. Institute of Computer Science University of Wrocław

IP Addressing A Simplified Tutorial

TCP/IP Protocol Suite. Marshal Miller Chris Chase

Internetworking and IP Address

Gary Hecht Computer Networking (IP Addressing, Subnet Masks, and Packets)

First Workshop on Open Source and Internet Technology for Scientific Environment: with case studies from Environmental Monitoring

Proxy Server, Network Address Translator, Firewall. Proxy Server

Slide 1 Introduction cnds@napier 1 Lecture 6 (Network Layer)

Computer Networks III

Network layer: Overview. Network layer functions IP Routing and forwarding

IP Networking. Overview. Networks Impact Daily Life. IP Networking - Part 1. How Networks Impact Daily Life. How Networks Impact Daily Life

Network-Oriented Software Development. Course: CSc4360/CSc6360 Instructor: Dr. Beyah Sessions: M-W, 3:00 4:40pm Lecture 2

1 Data information is sent onto the network cable using which of the following? A Communication protocol B Data packet

Internetworking. Problem: There is more than one network (heterogeneity & scale)

Network Layer: Network Layer and IP Protocol

Unit 4. Introduction to TCP/IP. Overview. Description. Unit Table of Contents

Network Layer. Introduction Datagrams and Virtual Circuits Routing Traffic Control. Data delivery from source to destination.

CSE 3461 / 5461: Computer Networking & Internet Technologies

Guide to TCP/IP, Third Edition. Chapter 3: Data Link and Network Layer TCP/IP Protocols

The Internet. Chapter 10. Learning Objectives. Chapter Outline. After reading this chapter, you should be able to:

Overview. Securing TCP/IP. Introduction to TCP/IP (cont d) Introduction to TCP/IP

Internet Protocol version 4 Part I

(Refer Slide Time: 02:17)

Internet Addresses (You should read Chapter 4 in Forouzan)

How do I get to

Internetworking and Internet-1. Global Addresses

Understanding TCP/IP. Introduction. What is an Architectural Model? APPENDIX

IP Subnetting. Subnetting

PART OF THE PICTURE: The TCP/IP Communications Architecture

Internet Protocols Fall Lectures 7-8 Andreas Terzis

Internet Protocols. Background CHAPTER

Chapter 9. IP Secure

Dynamic Host Configuration Protocol (DHCP) 02 NAT and DHCP Tópicos Avançados de Redes

- IPv4 Addressing and Subnetting -

Networking Test 4 Study Guide

CS 457 Lecture 19 Global Internet - BGP. Fall 2011

Internet Protocol (IP) IP - Network Layer. IP Routing. Advantages of Connectionless. CSCE 515: Computer Network Programming IP routing

SUPPORT DE COURS. Dr. Omari Mohammed Maître de Conférences Classe A Université d Adrar Courriel : omarinmt@gmail.com

How To Use A Network Over The Internet (Networking) With A Network (Netware) And A Network On A Computer (Network)

Mobile IP Network Layer Lesson 02 TCP/IP Suite and IP Protocol

Computer Networks/DV2 Lab

The Internet. Internet Technologies and Applications

PPS Internet-Praktikum. Prof. Bernhard Plattner Institut für Technische Informatik und Kommunikationsnetze (TIK)

Themen der Praktikumsnachmittage. PPS Internet-Praktikum. Zielsetzung. Infrastruktur im ETF B5

NETWORK LAYER/INTERNET PROTOCOLS

CITS1231 Web Technologies. Client, Server, the Internet, and the Web

Internet Protocol Version 6 (IPv6)

Network Programming TDC 561

Network layer" 1DT066! Distributed Information Systems!! Chapter 4" Network Layer!! goals: "

Network Security TCP/IP Refresher

TCP/IP Fundamentals. OSI Seven Layer Model & Seminar Outline

TCP/IP and the Internet

Introduction to LAN/WAN. Network Layer (part II)

AS/400e. TCP/IP routing and workload balancing

Terminology. Internet Addressing System

Routing and Packet Forwarding

Networking TCP/IP routing and workload balancing

Internet Control Protocols Reading: Chapter 3

Subnetting and Network Management Omer F. Rana. Networks and Data Communications 1

CHAPTER 0 INTRODUCTION TO TCP/IP

Transcription:

Chapter 3: Protocols and Services 3.1: The Internet Protocol: IP 3.2: Routing 3.3: Auxiliary Protocols 3.4: Quality of Service 3.5: Transport Layer: TCP and UDP OSI Reference Model Application Layer Presentation Layer Session Layer Chapter 4: Application Protocols Internet Protocols Chapter 2: Computer Networks Transport Layer Network Layer Data Link Layer Physical Layer Page 1

Layer 3 Lehrstuhl für Informatik 4 Layer 1/2 are responsible only for the transmission of data between adjacent computers. Layer 3: Network Layer Boundary between network carrier and customer Control of global traffic: Coupling of sub-networks by - Global addressing - Routing of data packets Global flow control Page 2

Layers in the Network Application Process Application Process Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Host A Routers in the network receive frames from layer 2, extract the layer 3 content (packet) and decide due to the global address, to which outgoing connection the packet must be passed on. Accordingly the packet becomes payload of a new frame and is sent. Network Layer Data Link Layer Physical Layer Router A Network Layer Data Link Layer Physical Layer Router B Application Layer Presentation Layer Session Layer Transport Layer Network Layer Data Link Layer Physical Layer Host B Page 3

Two Fundamental Philosophies Connectionless communication: Data are transferred as packets of variable length Source and destination address are being indicated Sending is made spontaneously without reservations Very easy to implement But: packets can take different ways to the receiver (wrong order of packets at the receiver, differences in transmission delay, unreliability) Connection-oriented communication: Connection establishment: Selection of the communication partner resp. of the terminal Examination of the communication readiness Initiation of a connection Data transmission: Information exchange between the partners Connection termination: Release of the terminals and channels Advantages: no change of sequence, reservation of capacity, flow control Page 4

Connectionless Communication Computer A 3 2 1 Computer B Computer C Message is divided into packets Access is always possible, small susceptibility to faults Alternative paths for the packets Additional effort in the nodes: Store-and-Forward network Keyword: Packet Switching Page 5

Connection-Oriented Communication Computer A Computer B 3 2 1 virtual connection Computer C Simple communication method Keyword: Circuit Switching Defined way between the participants Switching nodes connect the lines Exclusive use of the line (telephone) or virtual connection: Establishment of a connection over a (possibly even packet switching) network Page 6

On the Way to Today's Internet In the Internet, the connectionless principle is chosen, based on its predecessor ARPANET: Goal about 40 years ago: Interconnection of computers and networks using uniform protocols A particularly important initiative was initiated by the ARPA (Advanced Research Project Agency, with military interests) The participation of the military was the only sensible way to implement such an ambitious and extremely expensive project The OSI specification was still in developing phase Result: ARPANET (predecessor of today's Internet) Page 7

ARPANET Lehrstuhl für Informatik 4 Design objective for ARPANET The operability of the network should remain intact even after a largest disaster possible, e.g. a nuclear war, thus high connectivity and connectionless transmission Network computer and host computer are separated ARPA Advanced Research Projects Agency ARPANET Subnet 1969 Page 8

ARPANET Lehrstuhl für Informatik 4 A node consists of an IMP a host A subnet consists of: Interface Message Processors (IMPs), which are connected by leased transmission circuits High connectivity (in order to guarantee the demanded reliability) Several protocols for the communication between IMP-IMP, host-imp, Host-IMP Protocol Host-host Protocol Source IMP to destination IMP protocol Subnet IMP-IMP protocol Host IMP Page 9

The Beginning of ARPANET XDS 940 Stanford Research Institutes (SRI) IMP IBM 360/75 IMP University of California Santa Barbara (UCSB) IMP XDS 1-7 IMP California University of California Los Angeles (UCLA) DEK PDP-10 University of Utah ARPANET (December 1969) Page 10

Evolution by ARPANET Very fast evolution of ARPANET within shortest time: SRI Utah Illinois WITH SRI Utah Illinois Stanford Harvard Aberdeen UCSB USC WITH UCSB UCLA Harvard UCLA USC CMU ARPANET in April 1972 ARPANET in September 1972 Page 11

Interworking Lehrstuhl für Informatik 4 Problem: Interworking! Simultaneously to the ARPANET further (smaller) networks were developed. All the LANs, MANs, WANs had different protocols, media, could not be interconnected at first and were not be able to communicate with each another. Therefore: Development of uniform protocols on the transport- and network level (without a too accurate definition of these levels, in particular without exact coordination with the respective OSI levels). Result: TCP/IP networks. Page 12

TCP/IP Developed 1974: Transmission Control Protocol/Internet Protocol (TCP/IP) Requirements: Fault tolerance Maximal possible reliability and availability Flexibility (i.e. suitability for applications with very different requirements) The result: Network protocol IP; (Internet Protocol; connectionless) End-to-end protocols TCP (Transmission Control Protocol; connection-oriented) and UDP (User Datagram Protocol; connectionless) Page 13

From the ARPANET to the Internet 1983 TCP/IP became the official protocol of ARPANET. ARPANET was connected with many other USA networks. Intercontinental connecting with networks in Europe, Asia, Pacific. The total network evolved this way to a world-wide available network (called Internet ) and gradually lost its early militarily dominated character. No central administrated network, but a world-wide union from many individual, different networks under local control (and financing). 1990 the Internet consisted of 3,000 networks with 200,000 computers. That was however only the beginning of a rapid evolution. Page 14

Internet Lehrstuhl für Informatik 4 What does it mean: a computer is connected to the Internet? Use of the TCP/IP protocol suite Accessibility over an IP address Ability to send IP packets In its early period, the Internet was limited to the following applications: E-mail Remote login File transfer electronic mail (partly because the US post was not very reliable and the different time zones made telephone accessibility of the telephone partner more difficult) running jobs on external computers exchange of data between computers Page 15

Evolution of the Internet Until 1990: the Internet was comparatively small, only used by universities and research institutions. 1990: The WWW (World Wide Web) - first developed by the CERN for the simplification of communication within the field of high-energy physics - became, together with HTML and Netscape browsers, a from nobody foreseen killer application ; this was the breakthrough for the acceptance of the Internet. Emergence of so-called Internet Service Providers (ISP), i.e. companies, which make their computers available as access points to the Internet. Millions of new (predominantly non-academic) users! New applications, e.g. E-Commerce 1995: Backbones, ten thousands LANs, millions attached computers, exponentially rising number of users 1998: The number of attached computers is doubled approx. all 6 months 1999: The transferred data volume is doubled in less than 4 months Page 16

Evolution of the Internet 200.000.000 180.000.000 160.000.000 140.000.000 120.000.000 100.000.000 80.000.000 60.000.000 40.000.000 20.000.000 0 1.01.2002 1.01.2003 1.01.1981 1.01.1982 1.01.1983 1.01.1984 1.01.1985 1.01.1986 1.01.1987 1.01.1988 1.01.1989 1.01.1990 1.01.1991 1.01.1992 1.01.1993 1.01.1994 1.01.1995 1.01.1996 1.01.1997 1.01.1998 1.01.1999 1.01.2000 1.01.2001 At mid of 2007: (estimated) 500 million of hosts attached to the Internet Page 17

Internet and Intranet Internet Communication via the TCP/IP protocols Local operators control and finance Global coordination by some organizations Internet Providers provide access points for private individuals Intranet Enterprise-internal communication with the same protocols and applications as in the Internet. Computers are sealed off from the global Internet (data security) Heterogeneous network structures from different branches can be integrated with TCP/IP easily Use of applications like in the WWW for internal data exchange Page 18

The TCP/IP Protocol Suite HTTP FTP Telnet SMTP DNS SNMP TFTP Application Layer Protocols TCP UDP Transport Layer Helper protocols IP Routing protocols Internet Layer Networks Ethernet Token Ring DSL Wireless LAN Host-tonetwork Layer Page 19

Sandglass Model E-Mail, File Transfer, Video Conferencing, HTTP, SMTP, FTP, Because of the small number of central protocols but the large number of applications and communication networks, the TCP/IP protocol stack (and applications/networks) can be represented like a sandglass. Twisted Pair, Optical Fiber, Radio Transmission, Page 20

Internet Layer Lehrstuhl für Informatik 4 The tasks of the Internet layer can be rawly divided into three tasks: Data transfer over a global network (chapter 3.1) Route decision at the sub-nodes (chapter 3.2) Control of the network or transmission status, auxiliary protocols for address translation (chapter 3.3) Routing Protocols Transfer Protocols: IPv4, IPv6 Routing Tables Helper Protocols: ICMP, ARP, RARP, IGMP Page 21

IP Internet Protocol IP: connectionless, unreliable transmission of datagrams/packets ( Best Effort ) Transparent end-to-end communication between the hosts Routing, interoperability between different network types IP addressing (IPv4): Uses logical 32-bit addresses Hierarchical addressing 3 network classes 4 address formats (including multicast) Fragmenting and reassembling of packets Maximum packet size: 64 kbyte (in practice: 1500 byte) At present commonly used: Version 4 of IP protocol: IPv4 (September 1981, RFC 791) Page 22

IP Packet 32 Bits (4 Bytes) Version IHL Time to Live Identification Type of Service Protocol DM F F Total Length Fragment Offset Header Checksum IP Header, usually 20 Bytes Source Address Destination Address Options (variable, 0-40 Byte) Padding DATA (variable) Header Data Page 23

The IP Header (1) Version: IP version number (for simultaneous use of several IP versions) IHL: IP Header Length (in words of 32 bit; between 5 and 15, depending upon options) Type of Service: Indication of the desired service: Combination of reliability (e.g. file transfer) and speed (e.g. audio) 3 bit priority (0 = normal data, 7 = control packet) Precedence Delay Total Length: Length of the entire packet (in byte, 2 16-1 = 65535 bytes) Identification: definite marking of a packet Time to Live (TTL): Lifetime of packets is limited to maximal 255 Hops (endless circling of packets in the network is prevented). In principle, also the processing time in routers is to be considered, which does not happen in practice. The counter is reduced with each hop, with 0 the packet is discarded. D T R unused Throughput Reliability Page 24

The IP Header (2) DF: Don't Fragment. All routers must forward packets up to a size of 576 byte, everything beyond that is optional. Larger packets with set DF-bit therefore cannot take each possible way in the network. MF: More Fragments. 1 - further fragments follow. 0 - last fragment of a datagram) Fragment Offset: Sequence number of the fragments of a packet (2 13 = 8192 possible fragments). The offset states, at which place of a packet (counted in multiples of 8 byte) a fragment belongs. From this a maximum length of 8192 * 8 byte = 65536 byte results for a packet. Protocol: Which transport protocol is used in the data part (UDP, TCP, )? To which transport process the packet is to be passed on? Header Checksum: 1 s complement of the sum of the 16-bit half words of the header. Must be computed with each hop (since TTL changes) Source Address/Destination address: Network and host numbers of sending and receiving computer. This information is used by routers for the routing decision. Page 25

Fragmentation A too large or too small packet length prevents a good performance. Additionally there are often size restrictions (buffer, protocols with length specifications, standards, allowed access time to a channel, ) The data length must be a multiple of 8 byte. Exception: the last fragment, there only the remaining data are packed, padding to 8 byte units does not take place. If the DF -bit is set, the fragmentation is prevented. Ident. Flags Offset Data 777 x00 0 0 1200 bytes IP header 777 x01 0 0 511 777 x01 64 512 1023 777 x00 128 1024 1200 Page 26

The IP Header (3) Options: Prepare for future protocol extensions. Coverage: Multiple of 4 byte, therefore possibly padding is necessary. At present, 5 options are defined, however none is supported by common routers: Security: How secret is the transported information? (Application e.g. in military: Avoidance of crossing of certain countries/networks.) Strict Source Routing: Complete path defined from the source to the destination host by providing the IP addresses of all routers which are crossed. (Use by system managers e.g. in case of damaged routing tables or for time measurements) Loose Source Routing: The carried list of routers must be passed in indicated order. Additional routers are permitted. Record Route: Recording of the IP addresses of the routers passed. (Maximally 9 IP addresses possible, nowadays too few.) Time Stamp: Records router addresses (32 bits) as well as a time stamp for each router (32 bits). Application e.g. in fault management. Page 27

IP Addressing Lehrstuhl für Informatik 4 Unique IP address for each host and router. IP addresses are 32 bits long and are used in the Source Address as well as in Destination Address field of IP packets. The IP address is structured hierarchical and refers to a certain network, i.e. machines with connection to several networks have several IP addresses. Structure of the address: Network address for physical network (e.g. 137.226.0.0) and host address for a machine in the addressed network (e.g. 137.226.12.221) 32 bits 126 networks with 2 24 host each Class (starting from 1.0.0.0) A B 0 Network Host 10 Network Host 16383 networks with 2 16 hosts each (starting from 128.0.0.0) C 110 Network Host D 1110 Multicast address E 1111 Reserved for future use 2097151 networks (LANs) with 256 hosts each (starting from 192.0.0.0) Page 28

IP Addresses Lehrstuhl für Informatik 4 137.226.12.0 137.226.112.0 137.226.12.1 137.226.112.1 Router 137.226.12.21 137.226.112.78 Binary format Dotted Decimal Notation 10001001 11100010 00001100 00010101 137.226.12.21 Each node has (at least) one world-wide unique IP address Router or gateways, which link several networks with one another, have for each network an assigned IP address Page 29

IP Addresses and Routing Destination IP Address 12.x.x.x 137.226.x.x 142.117.x.x 194.52.124.x x.x.x.x Connection 194.52.124.x 142.117.x.x direct direct default Network Interface b a a b a 142.117.0.0 a b 194.52.124.0 137.226.0.0 12.0.0.0 Page 30

IP Addressing - Examples The representation of the 32-bit addresses is divided into 4 sections of each 8 bits: 137.226.12.174 10001001 11100010 00001100 10101110 Class B address Special addresses: Class B address of RWTH Aachen 0 0 0... 0 0 0 Subnet (Computer science 4) This host Terminal Shadow 0 0... 0 0 Host Host in this network 1 1 1... 1 1 1 Broadcast in own local area network Network 1 1 1... 1 1 1 Broadcast in the remote network 127 arbitrary Loop, no sending to the network Page 31

Address Space 6,25% 6,25% 50,00% 12,50% Klasse Class A Klasse Class B Klasse Class C Klasse Class D Klasse Class E 25,00% Page 32

Problems Lehrstuhl für Informatik 4 IP Addresses are scarce Nobody had thought about such a strong growth of the Internet (otherwise one would have defined longer addresses from the beginning). Too many Class A address blocks were assigned in the first Internet years. Inefficient use of the address space. Example: if 500 devices in an enterprise are to be attached, a Class B address block is needed, but by this unnecessarily more than 65.000 host addresses are blocked. Solution approach Extension of the address space within IPv6 against the actual version IPv4 IP version 6 has 128 bit for addresses 7 x 10 23 IP addresses per square meter of the earth's surface (including the oceans!) one address per molecule on earth's surface! But: The success of IPv6 is not by any means safe! (The introduction of IPv6 is tremendously difficult: Interoperability, costs, migration strategies,.) Page 33

IP Subnets Lehrstuhl für Informatik 4 Problem: Class C-networks are very small, Class B-networks often already too large. Therefore exists the possibility of dividing an through the IP-address identified network into so-called subnets. Examples for subnets: subnet mask 255.255.255.0 Ethernet A 128.10.1.0 Rest of the Internet All traffic for 128.10.0.0 Router 128.10.1.3 128.10.1.8 128.10.1.70 128.10.1.26 128.10.2.1 Ethernet A Host Ethernet B 128.10.2.0 Ethernet A Host Ethernet A Host Ethernet B Host 128.10.2.3 128.10.2.133 128.10.2.18 Ethernet B Host Ethernet B Host Page 34

IP Subnets Lehrstuhl für Informatik 4 Within an IP network address block, several physical networks can be addressed Some bits of the host address part are used as network ID A Subnet mask identifies the abused bits Class B address Network Host Subnet Mask 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 1 0 0 0 0 0 0 0 0 0 0 10 Network Subnet Host All hosts of a network should use the same subnet mask Routers can determine through combination of an IP address and a subnet mask, into which subnet a packet must be sent. Page 35

IP Subnets - Computation of the Destination The entrance router of the RWTH, which receives the IP packet, does not know, where host 12.21 is located no corresponding entry is in its routing table 137. 226. 12. 21 0111 10001001 11100010 00001100 00010101 AND IP address 255. 255. 255. 0 1111 1111 1111 1111 1111 1111 0000 0000 Subnet mask 137. 226. 12. 0 1000 1001 1110 0010 0000 1100 0000 0000 Network of the addressed host The router computes the (sub-)network address 137.226.12 and searches its routing table for this entry Page 36

Example of a Subnet Assigned network address for the RWTH: 137.226.0.0 137.226.12.0 Info 4 254 hosts per subnet: Hosts have the addresses 1 254 0 is reserved for the subnet 255 is reserved for broadcast in the subnet 137.226.8.0 137.226.112.0 137.227.10.0 Subnet mask for each subnet = 255.255.255.0 Other format for writing of addresses in subnets: prefix notation 137.226.12.221/24 Number of bits for (sub)network address Page 37

More flexible Addressing Remaining problem: how to use the very small class C networks efficiently for today s network sizes? How to reduce the number of entries in routing tables? Solution: Classless Inter-Domain Routing (CIDR) Allow also for moving the network/host separation in left direction, i.e. skip the class concept and always give a subnet mask as mark of the end of the network address part Examples: 137.250.x.x/15: The first 15 bits of the IP address only are used for the network identification even if it would be a class B address 197.121.192.x/19: Several class C networks are combined to a single subnet Used together with routing: Backbone router, e.g. on transatlantic links only consider the first 13 bits small routing tables, little cost of routing decision Routers of ISPs consider e.g. only the first 15 bits Routers in company networks consider e.g. the first 25 bits Page 38

NAT Network Address Translation Each internal computer in the Intranet needs an own IP address to communicate with the others. For this purpose, private address blocks are reserved, which everyone may use (without buying an own address block) within its own networks and which are never routed in the Internet: 10.0.0.0-10.255.255.255 172.16.0.0-172.31.255.255 192.168.0.0 192.168.255.255 When using addresses of those range, the internal computers can communicate with each other But: packets with those addresses are not forwarded by a router. Thus: routers, which are attached to the external world need a global address Solution: assign a few IP addresses to a company which are known by a NAT box which usually is installed with the router When data are leaving the own network, an address translation takes place: the NAT box exchanges the private address with a globally valid one Side effect: hiding of the internal network structure (security) Page 39

NAT Variants Lehrstuhl für Informatik 4 NAT is available in several variants, known under different names: Basic NAT (also: Static NAT) Each private IP address is translated into one certain external IP Either, you need as much external addresses as private ones, otherwise no retranslation is possible when a reply arrives Or, you manage a pool of external IP addresses and assign one dynamically when a request is sent out 192.168.0.2 192.168.0.3 Private IP 192.168.0.2 192.168.0.3 192.168.0.4 192.168.0.5 router with NAT box Map to 137.226.12.32 137.226.12.33 137.226.12.34 137.226.12.35 Internet 192.168.0.2 192.168.0.3 Private IP 192.168.0.2 192.168.0.5 --- --- router with NAT box Currently mapped: 137.226.12.32 137.226.12.33 137.226.12.34 137.226.12.35 Internet 192.168.0.4 192.168.0.5 192.168.0.4 192.168.0.5 Page 40

NAT Variants Lehrstuhl für Informatik 4 Disadvantages of static NAT: With static mapping, you need as much official IP addresses as you have computers With dynamic mapping, you need less official IP addresses, but for times of high traffic you nevertheless need nearly as much addresses as local computers Those approaches help to hide the network structure, but not to save addresses Hiding NAT (also: NAPT: Network Address Port Translation, Masquerading) Translate several local addresses into the same external address Now: some more details are necessary to deliver a response 192.168.0.2 192.168.0.3 router with NAT box destination? to: 137.226.12.32 Internet Private IP Map to 192.168.0.2 137.226.12.32 192.168.0.3 137.226.12.32 192.168.0.4 192.168.0.5 192.168.0.4 192.168.0.5 137.226.12.32 137.226.12.32 Page 41

NAPT Network Address Port Translation Protocol Port (local) IP (local) Port (global) IP (global) IP (destination) Port (destination) TCP 1066 10.0.0.1 1066 198.60.42.12 137.226.12.221 21 TCP 1500 10.0.0.7 1500 198.60.42.12 207.17.4.21 80 Page 42

Problems with NAPT NAPT works well with communication initiated from the Intranet. But: how could someone from outside give a request to the Intranet (e.g. to the web server)? NAPT box needs to be a bit more intelligent Some static information has to be stored, e.g. each incoming request with port 80 has to be mapped to the private address of the web server Still problems if e.g. several web servers are operated, or if some user spontaneously wants to have special access to a host from outside Lots of workarounds Thus, only more IP addresses really help to solve the problem Page 43

The new IP - IPv6 Why changing the protocol, when IPv4 works well? Dramatically increasing need for new IP addresses Improved support of real time applications Security mechanisms (Authentication and data protection) Differentiation of types of service, in particular for real time applications Support of mobility (hosts can go on journeys without address change) Simplification of the protocol in order to ensure a faster processing Reduction of the extent of the routing tables Options for further development of the protocol IPv6 (December 1995, RFC 1883) Page 44

IPv6 - Characteristics Address size 128-bit addresses (8 groups of each 4 hexadecimal numbers) Improved option mechanism Simplifies and accelerates the processing of IPv6 packets in routers Auto-configuration of addresses Dynamic allocation of IPv6-addresses Improvement of the address flexibility Anycast address: Reach any one out of several Support of the reservation of resources Marking of packets for special traffic Security mechanisms Authentication and Privacy Simpler header structure: IHL: redundant, no variable length of header by new option mechanism Protocol, fragmentation fields: redundant, moved into the options Checksum: Already done by layer 2 and 4 Page 45

IPv6 Main Header Version: IP version number Priority: 4 bits for priority. 1 - News, 4 - ftp, 6 - telnet, 8 to 15 - real time traffic Flow label: virtual connection with certain characteristics/requirements PayloadLen: packet length after the 40- byte header Next Header: 8-bit selector. Indicates the type of the following extension header (or the transport header) HopLimit: At each node decremented by one. At zero the packet is discarded Source Address: The address of the original sender of the packet Destination Address: The address of the receiver (not necessarily the final destination, if there is an optional routing header) Next Header/Data: if an extension header is specified, it follows after the main header. Otherwise, the data are following 1 4 8 16 24 32 Version (4) Priority (4) PayloadLen (16) Flow label (24) Source Address (128) Destination Address (128) Next Header/Data Next Header (8) HopLimit (8) The prefix of an address characterizes geographical areas, providers, local internal areas, Page 46

IPv6 Extension Headers Optional data follows in extension headers. There are 6 headers defined: Hop by Hop (information for single links) All routers have to examine this field. Momentarily only the support of Jumbograms (packets exceeding the normal IP packet length) is defined (length specification). Routing (definition of a full or partly specified route) Fragmentation (administration of fragments) Difference to IPv4: Only the source can do fragmentation. Routers for which a packet is too large, only send an error message back to the source. Authentication (of the sender) Ciphered data Destination options (additional information for the destination) Page 47

IPv4 vs. IPv6: Header 4 8 16 32 4 8 16 32 Priority Version En IHL Type OF of Service service Totally Length length Version En Flow Label label Identification Time to Protocol Live Fragment offset Header Checksum NEXT Next PayloadLen Header headers SOURCE Source ADDRESS Address Hop Limit limit SOURCE Source ADDRESS Address Destination ADDRESS Address Options (variable)/padding DATA Data SOURCE Source ADDRESS Address SOURCE Source ADDRESS Address SOURCE Source ADDRESS Address Destination ADDRESS Address Destination ADDRESS Address The IPv6 header is longer, but this is only caused by the longer addresses. Otherwise it is better sorted and thus faster to process by routers. Destination ADDRESS Address Destination ADDRESS Address NEXT Next Header header/data/ Data Page 48

Coexistence of IPv4 and IPv6 IPv6 cannot be introduced over night for some time both IP variants will be used in parallel. New network interface card drivers support both versions of IP, thus they are able to communicate with the newer version But: how to enable two modern IPv6-based hosts to communicate if only an IPv4- based network is in between? 1. Header Conversion Router translates an incoming IPv6 packet into a IPv4 packet, receiving router retranslates But: reconstruction of e.g. flow label??? payload IPv6 header payload IPv4 header payload IPv6 header Internet mostly IPv4 IPv6 network Routers which speak IPv4 and IPv6 in parallel IPv6 network Page 49

Coexistence of IPv4 and IPv6 2. Tunneling Router at the entry to the IPv4-based network encapsulate an incoming IPv6 packet into a new IPv4 packet with destination address of the next router also supporting IPv6 payload IPv6 header payload IPv6 header IPv4 header payload IPv6 header Internet mostly IPv4 IPv6 network IPv6 tunnel through IPv4 IPv6 network More overhead because of two headers for one packet, but no information loss due to header conversion Tunneling is a general concept also used for multicast, VPN, etc: it simply means pack a whole packet as it is into a new packet of different protocol Page 50