66
Introduction au TCP/IP Eric Lapaille [email protected] (c) 1999

Introduction au TCP/IP Eric Lapaille [email protected] (c) 1999

Embed Size (px)

Citation preview

Page 1: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Introduction au TCP/IP

Eric Lapaille

[email protected]

(c) 1999

Page 2: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

TCP/IP

• Transmission Control Protocol

• Internet Protocol.

• DARPA ( Defense Advanced Research Projects Agency )

• Defense Communications Agency (DCA)

• Bolt, Beranek & Newman (BBN)

Page 3: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Raisons du succès

• Idéal pour interconnecter du matériel hétéroclite

• Standard ouvert

• Utilisable librement

• Indépendant des couches physiques de hardware.

• Schéma d’adressage unique

Page 4: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Open Systems Interconnect (OSI)

Application

Presentation

SessionYY

Transport

Network

Datalink

Physical

Page 5: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche physique

Elle s'occupe de la transmission des bits de façon bruteElle définit les niveaux de tensionElle définit la durée d'un bitElle initialise la connexionElle détermine le nombre de broches du connecteur

Page 6: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche liaison de données

Elle fournit un moyen de transmission exempt d'erreur à la couche réseauElle fractionne les données en tramesElle transmet les trames en séquenceElle gère les trames d'acquittementElle résout les problèmes provoqués par des trames erronéesElle fournit un contrôle de flux

Page 7: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche réseau

Elle est chargée de transporter les PAQUETS de la source vers la destinationElle doit connaitre la topologie du réseauElle doit éviter les routes surchargées

Page 8: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche transport

Elle accepte les données de la couche supérieureElle découpe les données en unités plus petitesElles s'assure que ces unités arrivent à destination

Page 9: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche session

Elle démarre véritablement la communicationElle s'occupe de la synchronisationElle détermine le mode de transmission

Page 10: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche présentation

Cette couche s'occupe de la sémantique et de la syntaxe du l'information transmise

Page 11: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

La couche application

Elle fournit et gère les interfaces entre la machine et les utilisateursCes interfaces sont constituées des différents programmes utilisateurs

Page 12: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Répéteur

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

PhysicalPhysical

Page 13: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Repeater

Ils sont utilisés pour étendre le LAN au delà de ses limitations électriquesIls amplifient et remettent le signal en formeIls éliminent la désynchronisationIls passent le signal sur un autre médiaIls sont transparents pour le réseauCe ne sont pas des appareils"Store And Forward"Ils ne sont pas adressables (uniquement pour le management hors standard)

Page 14: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Bridge

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

PhysicalPhysical

Datalink

Page 15: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Bridging

Ce sont des relais de niveau 2un relais est un système qui accepte un message et l'envoie plus loin sur le réseauUn relais de niveau 2, envoie le message Si certaines conditions sont rempliesCes conditions sont basées sur :MAC ADDRESSESSOURCE ROUTING

Page 16: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Routeur

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

PhysicalPhysical

Datalink

Network

Page 17: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

BRouteur

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

PhysicalPhysical

Datalink

Network

Page 18: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Gateway

Application

Presentation

Session

Transport

Network

Datalink

Physical

Application

Presentation

Session

Transport

Network

Datalink

PhysicalPhysical

Datalink

Network

Application

Presentation

Session

Transport

Page 19: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Modèle TCP/IP

TCP

IP

Datalink

Physical

Application

UDP

ICMP

RARPARP

Message

Segment

Datagramme

Frame

Bit

Page 20: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

OSI versus TCP/IP

Application

Presentation

Session

Transport

Network

Datalink

Physical

Transport

Internet

Datalink

Physical

Application

Page 21: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Architecture TCP/IP

Page 22: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

TCP/IP - IPX/SPX - NetBEUI

Application

Presentation

Session

Transport

Network

Datalink

Physical

NCP TCP app SMB

SPX TCP

IPX IP

NetBEUI

Page 23: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

TCP/IP et OSI

Page 24: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999
Page 25: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

TCP/IP sous Ethernet

Destination CRCDataType (0800)Source

IP DataIP header

TCP DataTCP header

FTP DataFTP header

Page 26: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Transmission Control Protocol0 4 8 12 16 20 24 28-31

Source Port Destination Port

Sequence Number

Acknowledgement number

WindowOffset Reserved Code

Urgent PointerChecksum

Options Padding

Data

Page 27: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

User Datagram Protocol (UDP)

0

Source Port Destination Port

16

Length Checksum

Page 28: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Datagramme4

Version Total Length

Identification

Time To Live

Source IP Address

Options Padding

Data

IHL

0 28-31242016128

Type of Service

Flags Fragment offset

Protocol Header Checksum

Destination IP Address

Page 29: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

MTU (Maximum Transmission Unit)

Page 30: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Internet Control Message Protocol

• le contrôle de flux

• la détection de destinations inaccessibles

• la redirection de routes

Destination CRCDataType (0800)Source

IP DataIP header

...ICMP

CodeType

Page 31: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Adressage IP

Codée sur 32 bits 4 octets de 0 à 255193.75.199.1

0 réservé0.0.0.0cet hôte ci sur ceréseau ci

255 réservé193.75.199.255broadcastdiffusion limitée

Page 32: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Adresse IP

Page 33: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Classes A à C

Classe A

Classe B

Classe C

N

N N

N N N

H

H H

H

H

H

0

1 0

1 01

Page 34: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Adressage IP

Classe Bits valeurportion réseau

portion hôte

nombre de réseaux

nombre adresses subnet Bits

A 0 1-126 N H.H.H 126 16777214 255,0,0,0 1-7-24

B 1 0 128-191 N.N. H.H 16382 65534 255,255,0,0 2-14-16

C 1 1 0 192-223 N.N.N H 2097150 254 255,255,255,0 3-21-8

D 1 1 1 0 224-239

E 1 1 1 1 240-

Page 35: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Loopback

127.0.0.x bouclage local

localhost

Page 36: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

•0.0.0.0 Un hôte inconnu (source)

•255.255.255.255 Tous les hôtes (destination)

•193.75.199.3 Hôte 3 du réseau 193.75.199

•193.75.199.0 Hôte inconnu du réseau 193.75.199

•193.75.199.255Tous les hôtes du réseau 193.75.199

•0.0.0.4 L'hôte 4 de ce réseau (source)

•127.0.0.1 Cet hôte

Comment interpréter une adresse

Page 37: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Adresses test

Classe Adresses De à

A 1 10.0.0.0 10.255.255.255

B 255 172.16.0.0 172.31.255.255

C 65536 192.168.0.0

192.168.255.255

Page 38: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Problèmes• Trop peu de classes B• IPv6 adresse codée sur 128 bits• Explosion des tables de routage• CIDR Classless Inter-Domain Routing• TransRégion 192.0.0.0 -> 193.255.255.255• Europe 194.0.0.0 -> 195.255.255.255• Autres 196.0.0.0 -> 197.255.255.255• Amérique Nord 198.0.0.0 -> 199.255.255.255• Reste Amérique 200.0.0.0 ->

201.255.255.255• Pacifique 202.0.0.0 -> 203.255.255.255• Autres 204.0.0.0 -> 207.255.255.255

Page 39: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

IPv6

Version Flow label

Payload length

Source IP Address

Priority

Next header Hop Limit

Destination IP Address

Page 40: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Subnet

128 64 32 16 8 4 2 1

I I 0 0 0 0 0 0

Page 41: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Subnet

Subnet Mask Bits Subnets Hôtes parsubnet

255.255.255.0 0 0 254255.255.255.192 2 2 62255.255.255.224 3 6 30255.255.255.240 4 14 14255.255.255.248 5 30 6255.255.255.252 6 62 2

Page 42: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

DNS aux USA

• COM pour les compagnies commerciales,

• EDU pour le monde académique,

• GOV pour les instances gouvernementales,

• MIL pour les institutions militaires,

• NET ou ORG pour les autres organisations.

Page 43: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

DNS root

Page 44: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

DNS query

Page 45: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Protocoles

• ip 0 IP # internet protocol, pseudo protocol number

• icmp 1 ICMP # internet control message protocol

• igmp 2 IGMP # internet group multicast protocol

• ggp 3 GGP # gateway-gateway protocol

• tcp 6 TCP # transmission control protocol

• pup 12 PUP # PARC universal packet protocol

• udp 17 UDP # user datagram protocol

• idp 22 IDP # WhatsThis?

• raw 255 RAW # RAW IP interface

Page 46: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Port

• ftp 21/tcp # File Transfer Protocol • telnet 23/tcp # Virtual Terminal Protocol• -- 24/tcp/udp # Any private mail

system• smtp 25/tcp # Simple Mail Transfer

Protocol• nsw-fe 27/tcp/udp # NSW User System FE• msg-icp 29/tcp/udp # MSG ICP

Page 47: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

BOOT protocol

Vendor specific (64b)

OPTransaction id

SecondsClient IP addressYour IP address

Server Ip addressGateway IP address

Client hardware add (16b)Server Host name (64 b)Boot file name (128 b)

Unused flags

HTYPE HopsHLEN

Page 48: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

DHCP Dynamic Host Configuration Protocol

• Standard ouvert – RFC 1533, 1534, 1541, 1542

• Aussi simple que NetBEUI, Appletalk, IPX

• Pas de configuration de stations client

• Gestion centralisée

Page 49: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

WINS Windows Internetworking Naming Service

• Objectifs– Conserver la flexibilité des noms NetBIOS pour TCP/IP

– Spécifier un nom plutôt qu’une adresse

– Minimiser les diffusions/broadcast sur le réseau

• Qu’est ce que WINS ?– Base de données stockant les liaisons entre les noms logiques

utilisés par NetBIOS et les adresses IP

– Protocole Client-Serveur

– Base dynamique

• DHCP + WINS = table dynamique de correspondance entre noms de machines et adresses

Page 50: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Intégration DNS / WINS

DNS query: “srv1.DNS query: “srv1.myco.commyco.com””

hosthost domaindomain

Le serveur DNS appelle WINS Le serveur DNS appelle WINS pour résoudre le nom de pour résoudre le nom de machine (machine (host namehost name))to IP addressto IP address

myco.commyco.com WINS AddrWINS Addr

DNSDNS

srv1srv1 1.2.3.4 1.2.3.4

WINSWINS

Base Base dynamiquedynamique

Base Base statiquestatique

Page 51: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

SocketsSockets

Clien

tC

lient

Sock

etsS

ockets

Netw

ork (p

rotocol stack)

Netw

ork (p

rotocol stack) N

etw

ork

(p

roto

col s

tack

)N

etw

ork

(p

roto

col s

tack

)

Soc

ket

sS

ock

ets

Ser

ver

Ser

ver

Page 52: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

WinSock ArchitectureWinSock Architecture

WinSockWinSockWinSockWinSock

NetworkNetworkNetworkNetwork

TCP/IPTCP/IPTCP/IPTCP/IP

TelnetTelnetTelnetTelnetHTTPHTTPHTTPHTTP FTPFTPFTPFTP Other Other appsapps

Other Other appsapps

Page 53: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

COMCOM

Clien

tC

lient

CO

M ru

ntim

eC

OM

run

time

Sock

etsS

ockets

Net

wor

k

Net

wor

k (a

ny

stac

k)

(an

y st

ack

)Netw

ork

Netw

ork (an

y stack)

(any stack

)

Soc

ket

sS

ock

ets

CO

M r

un

tim

eC

OM

ru

nti

me

Ser

ver

Ser

ver

Cross-processCross-process

In-processIn-process

Page 54: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

ARPAddress Resolution Protocol

• MAC niveau 2 du modèle OSI,

• Logical Link Control (LLC)

• CSMA/CD (Carrier Sense Multiple Access

with Collision Detection)

• Medium Access Control (MAC) .

Page 55: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

ARP

Page 56: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Serial Line IP

• pas de compression de données

• pas de correction d’erreurs

• s’adapte mal aux mauvaises lignes

• n’accepte qu’un protocole à la fois

• procédure de scripting non standardisée

• pas d’allocation dynamique d’adresses

Page 57: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Point to Point Protocol

• contrôle de la ligne

• configuration dynamique de l'adresse IP de l'appelant.

• supporte IP, DECNET, XNS, Appletalk, Novell IPX, NETBEUI .

• multiplex

• PAP ( Password Authentication Protocol ) ou CHAP

( Challenge Handshake Authentication Protocol ).

Page 58: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Point to Point Tunnelling Protocol

Internet ServiceInternet ServiceProviderProvider

Paquets PPPPaquets PPPencryptésencryptés

Paquets IPX

Paquets IPPaquets IP

INTERNET ou INTERNET ou backbone IP privébackbone IP privé

TunnelTunnel

Paquets PPPPaquets PPPencryptés etencryptés etencapsulésencapsulés

Windows NTWindows NTServer RASServer RAS

Sécurité & Sécurité & accounting, accounting,

authentification authentification ISPISP

Corporate Corporate LANLAN

Windows 95,Windows 95,Windows NT, Windows NT, tout client PPPtout client PPP

AuthentificatioAuthentification domaine, n domaine,

DHCPDHCP

Page 59: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Packet INternet Groper

• Pinging 192.92.130.1 with 32 bytes of data:

• Reply from 192.92.130.1: bytes=32 time=761ms TTL=250

• 8 bits de type• 8 bits de code• 16 de checksum • 16 bits pour l'identifiant• 16 pour le numéro de séquence.

Page 60: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Ping

TCP

IP

Datalink

Physical

Application

UDP

ICMP

IP

Datalink

Physical

Ping

Page 61: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Network File System (NFS)

NFS

XDR

RPC

UDP

IP

Datalink

Physical

TCP

Page 62: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

RIP

Net 2 address, 1-2Family Net 2Net 2 address, 3-6Net 2 address, 7-10

Net 2 address, 11-14Distance network 2

Net 1 address, 1-2Family Net 1Net 1 address, 3-6Net 1 address, 7-10

Net 1 address, 11-14Distance network 1

ReservedCommandVersion

Page 63: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

RIP V2

Route TagFamily Id

Subnet MaskNext Hop

Metric

ReservedCommandVersion

IP address

Page 64: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

Routing

Page 65: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

SNMP

Simple Network Management Protocol

IP

Datalink

Physical

Application

TCP/UDP

ICMP

ARP

MIB

MIB

MIB

MIB

MIB

MIB

MIB

Page 66: Introduction au TCP/IP Eric Lapaille eric@netline.be (c) 1999

??Questions Questions