1.3. IP Service Model

“IP provide deliberately simple, dumb, minimal service”

I. Network Layer:

is responsible send IP datagram to the other end: IP Datagram = IP Data + IP Header

IP(Internet Protocol) is only one protocol must used by Network Layer

II. IP Service’s Property

1. Datagram: self-contained, individual hop-by-hop routing

2. Unreliable: no promise delivered to destination, that is it is not registered mail

3. Best effort: only makes errors, certain conditions happened

4. Connectionless: communication doesn’t start by establishing connection to end

III. IP Service is simple and minimal: WHY?

1. To keep network simple:

packet delivered quickly at low cost maintenance

2. End-to-End principle:

network can become easier to evolve if complicated feature implemented at end host(software). Not in hardware of the Internet

3. Allow a reliable / unreliable choice on top layer

let application choose the reliability(i.e. TCP / UDP) for performance reasons

4. Can work over any link layer:

IP makes a very little expectation of the link layer below. So any of link layer technologies(i.e. wired, wireless) can be implemented

IV. Other services provided by IP

1. TTL(Times To Live: Hop Count): prevent packet looping forever

2. Fragment packets if they are too long to send as itself:

each link layer has maximum bandwidth to send a frame at a time

3. Use header checksum to reduce chance of wrong destination on delivery

4. Allow compatible with new version of IP: IPv6

5. Allow new fields added to datagram header:

pros: new service can be added using new fields

cons: break the goal of simple and minimal design of IP

V. IP Datagram Detail…

IPv4_DATAGRAM

1.2. The 4 Layer Internet Model

Layering is core concept to boost reusability and modularity in network design”

“Each layer doesn’t have to regard how the right below layer worked, it is Abstraction

I. Link Layer

carry the data(called frame) over one link at a time, hop-by-hop.

i.e. Ethernet(wired), Wi-Fi(wireless)

II. Network Layer

deliver data(called datagram) end-to-end, from src to des

*IP(Internet Protocol): Network Layer must use IP: not reliable, ordering, error-check

III. Transport Layer: TCP / UDP

deliver data(called packet) from src application to des application

A. TCP(Transmission Control Protocol):

1. Reliability: re-transmit until received successfully

2. In-Order: guarantee correct in-order delivery

i.e. web client, e-mail client

B. UDP(User Datagram Protocol):

no reliable, no ordering

i.e. video conferencing

IV. Application Layer:

have their-own protocol parsing semantics of byte-stream served by Transport Layer

i.e. http, ftp, www, ssh, telnet, dns, dhcp, sip

“Layer can use the service provided layer right below by well-defined API”

V. Terminology

A. Packet = data + header

header is meta-data describing what data is, where it is going, it comes from

OSI7_and_4LAYER_Mdoel
[OSI 7-layer to 4-layer Internet Model]