El nivell de transport

  • Ramon Musach Pi

     Ramon Musach Pi

    Llicenciat en Ciències Matemàtiques i Enginyer Superior en Informàtica per la Universitat Autònoma de Barcelona (UAB). Desenvolupa la seva activitat entre aquestes dues disciplines, des del vessant docent i d'investigació. Autor de diversos materials didàctics multimèdia, de formació i de suport a la tasca docent.

PID_00218433
Cap part d'aquesta publicació, incloent-hi el disseny general i la coberta, no pot ser copiada, reproduïda, emmagatzemada o transmesa de cap manera ni per cap mitjà, tant si és elèctric com mecànic, òptic, de gravació, de fotocòpia o per altres mètodes, sense l'autorització prèvia per escrit del titular dels drets.

Introducció

En aquest mòdul detallarem les característiques i el funcionament del nivell de transport.
La capa de transport és la que s’encarrega de proveir la comunicació extrem a extrem entre processos d’aplicacions ubicades en diferents equips finals. Per tant, fa que les aplicacions no s’hagin de preocupar de la infraestructura de xarxa subjacent. El fet que sigui extrem a extrem fa que aquest protocol només s’hagi d’aplicar en aquests amfitrions o equips finals i no en els equips intermedis o routers.
La informació transmesa per les aplicacions es converteix en paquets de la capa de transport, coneguts com a segments de la capa de transport. Cada segment construït disposa d’una capçalera i la informació que es vol transmetre (que segurament s’ha repartit en diferents segments). Els segments s’envien a la capa de xarxa, on seran inclosos en els paquets del nivell de xarxa, anomenats datagrames. Aquests datagrames van circulant per diferents commutadors (switches) o encaminadors (routers) a nivell de la capa de xarxa, fins arribar a l’equip destinatari o receptor. Serà aquest el que, a nivell de la seva capa de xarxa, extraurà el segment de transport i el passarà a la seva capa de transport per a poder processar-lo i enviar-lo a l’aplicació corresponent.
Figura 1
Els segments TCP s’encapsulen i s’envien dins datagrames IP, tal i com es mostra en aquesta figura.
Els segments TCP s’encapsulen i s’envien dins datagrames IP, tal i com es mostra en aquesta figura.
Les funcions de la capa de transport són les següents:
  • Garantir la transmissió sense errors, extrem a extrem, independentment dels tipus de xarxa pels que circuli la informació. Això ho fa assegurant que les dades arribin sense pèrdues, sense errors i sense duplicitats.

  • Controlar la transmissió extrem a extrem, del flux de dades i de la congestió de la xarxa. S’encarregarà d’ordenar els paquets que vagin arribant i de fragmentar o recompondre els missatges, segons convingui.

  • Responsabilitzar-se d’establir, mantenir i finalitzar les connexions entre dos equips finals, o entre un equip final i un servidor en una xarxa.

  • Permetre la multiplexació de diverses connexions de transport sobre una mateixa connexió de xarxa.

Els serveis de la capa de transport són implementats per un protocol de la mateixa capa que és utilitzat per comunicar dos hosts o equips finals.
Figura 2
La capa de transport és la primera capa extrem a extrem.
La capa de transport és la primera capa extrem a extrem.
Cada servei pot emprar un dels dos protocols disponibles depenent del nivell de fiabilitat que cada aplicació necessiti. Aquests dos protocols són:
  • UDP (User Datagram Protocol): protocol NO orientat a connexió.

  • TCP (Transmission Control Protocol): protocol orientat a connexió.

TCP proporciona fiabilitat complerta, ja que garanteix que els paquets arribin correctament i en ordre, mentre que UDP només proporciona un simple control d’errors.
Els serveis de la capa de transport es poden dividir en cinc grans categories, que tot seguit passem a descriure:
1) Transmissió de missatges d’extrem a extrem. La capa de xarxa tracta cadascun dels paquets enviats de forma independent, en canvi la capa de transport assegura la transmissió correcta de tot el missatge, format per diferents paquets individuals que caldrà ordenar en la destinació.
2) Adreçament. Tenint en compte que un mateix segment pot estar donant servei a diferents aplicacions, cal que els protocols de la capa de transport coneguin quins protocols de capes superiors s’estan comunicant. Per tant, a més de conèixer l’adreçament físic i lògic, cal conèixer un tercer nivell d’adreçament: les ubicacions conegudes amb el nom de punts d’accés al servei (service access points o SAP).
3) Fiabilitat de les transmissions. El protocol ha de lliurar a l’aplicació de destí exactament la mateixa informació que li ha lliurat l’aplicació d’origen, per tant, ha d’estar lliure d’errors. A més a més, ha de garantir que tota la informació transmesa per l’aplicació origen es lliuri a l’aplicació de destí, garantint la seqüència en la transmissió, sense pèrdues i sense duplicitats.
4) Control del flux. Correspon a un conjunt de procediments que permeten indicar a l’emissor quina quantitat de dades (paquets o bytes) ha de transmetre abans d’aturar-se a esperar un acusament de rebut o ACK per part del receptor. El flux de dades s’ha de realitzar de manera que mai saturi el buffer del receptor on es van desant les dades per al seu posterior tractament.
5) Multiplexació. La multiplexació d’aplicacions correspon a prendre les dades de les diferents aplicacions que s’estan fent servir a la capa d'aplicació, etiquetar-les amb un nombre de port (UDP o TCP) que identifica cada aplicació de l’emissor i enviar aquest paquet amb la informació de totes les aplicacions a la capa de xarxa. Aquesta multiplexació pot ser de dos tipus: Multiplexació ascendent (múltiples connexions de la capa de transport utilitzen la mateixa connexió de xarxa), quan la capa de transport permet que diferents aplicacions puguin estar compartint un mateix circuit virtual; i la multiplexació descendent (una connexió de transport que utilitza múltiples connexions de xarxa) quan la cap de transport divideix una única connexió en diferents circuits virtuals per a millorar la velocitat de transmissió.
Figura 3
En aquests esquemes podem apreciar la diferència entre els dos tipus de multiplexació. Recordem que els serveis estan disponibles en els anomenats service access point (SAP), identificats amb una adreça única.
En aquests esquemes podem apreciar la diferència entre els dos tipus de multiplexació. Recordem que els serveis estan disponibles en els anomenats service access point (SAP), identificats amb una adreça única.

1.Ports

Un concepte molt important en el protocol TCP és el dels ports, els quals permeten identificar de forma unívoca a tots els programes que funcionen en el nivell d'aplicació i que reben les dades procedents de TCP. Recordem que vénen a ser com canals d'entrada/sortida d'informació, però que no existeixen com a tals, perquè l'entrada física només és una: la connexió de xarxa. Així, per exemple, FTP utilitza el port 21, Telnet el 23, SMTP (per a correu electrònic) el 25, o http (per a www) el port 80. D'aquesta manera, si es vol contactar amb una aplicació en una màquina determinada serà suficient escriure l'adreça IP de la màquina seguida del seu nombre de port.
Figura 4
Associació d’algunes aplicacions i els ports que utilitzen.
Associació d’algunes aplicacions i els ports que utilitzen.
En definitiva, un ordinador connectat a la xarxa s'identifica unívocament amb el seu nombre IP, i això li permet comunicar-se amb altres ordinadors. Però a més d'identificar-se a la xarxa, haurem de poder arribar a diferenciar els serveis que podem utilitzar. Per tant, l'adreça completa, en el cas d'Internet, serà la IP acompanyada del nombre de port.
En el cas de la jerarquia TCP/IP es defineixen dues adreces que relacionen el nivell de transport amb els nivells superior i inferior. Pel nivell inferior tenim l’adreça IP, que identifica un subsistema dins una xarxa i, pel nivell superior l’anomenat port, que identifica l’aplicació que requereix la comunicació. S’anomena sòcol o socket d’un procés el parell format per l’adreça IP del host on el procés o aplicació s’està executant i el nombre de port d’aquest procés.
Exemple
Si l’adreça IP d’un host on s’està executant un servei HTTP és 180.24.32.15 i HTTP és el servei (amb nombre de port predeterminat 80), aleshores el socket del servei HTTP en aquest host seria 180.24.32.15:80. Amb aquest nombre, el host identificarà el servei sol·licitat, en aquest cas HTTP.
Com que algunes aplicacions són, per elles mateixes, protocols estandarditzats, com Telnet i FTP, utilitzen el mateix nombre de port en totes les implementacions. Aquests ports "assignats" es coneixen com a ports ben coneguts i, a les seves aplicacions, aplicacions ben conegudes. Aquests nombres de port són controlats i assignats per IANA (Internet Assigned Numbers Authority), per la qual cosa han de ser respectats pels fabricants. En la majoria dels sistemes, només els poden utilitzar els processos del sistema o els programes que executen usuaris privilegiats. Aquests nombres de port van del 0 al 1023.
Els fabricants tenen la possibilitat de requerir a IANA nombres de port, que seran oficialment assignats per a protocols propis (del 1024 al 49151) –es coneixen com a ports registrats-. La resta de ports, del 49152 al 65535 –ports dinàmics i/o privats- no els controla IANA i, en la major part dels sistemes, els poden usar els programes d'usuari.

Rang de ports

Denominació

0 al 1023

Ports ben coneguts

1024 al 49151

Ports registrats

49152 al 65535

Ports dinàmics i/o privats

Existeixen 65535 ports diferents emprats per les connexions de xarxa.

2.User Datagram Protocol (UDP)

UDP (User Datagram Protocol) és un protocol no orientat a connexió utilitzat a la capa de transport, com alternativa al protocol TCP (que veurem més endavant). El fet de ser no orientat a connexió fa que a l’equip emissor no es comprovi si el host de destinació està disponible.
Es caracteritza per un servei ràpid de transmissió, amb una mínima càrrega de la xarxa, però per contra, no ofereix fiabilitat ni control de flux. La no fiabilitat va relacionada amb el fet que l’emissor no té garanties que les dades enviades arribin correctament al destí. Pel que fa a no realitzar control de flux, cal dir que en els camps del seus segments no trobem un número de seqüència, per tant, no es controla l’ordre amb el que arriben els segments al destí.
Una altra característica d’aquest protocol és que ofereix la multiplexació d’aplicacions sobre la mateixa connexió de xarxa gestionada pel protocol IP. Així un mateix protocol de transport porta informació de diferents aplicacions, essent identificades pel port.
Fixem-nos que emprar UDP pot arribar a ser molt beneficiós, sobretot, quan es volen transmetre petites quantitats d’informació, o bé quan les nostres aplicacions necessiten d’una resposta per part del destinatari de la informació, com per exemple, una consulta a una base de dades.
Un altre cas en el que UDP resulta molt eficient, tot i que no proporcioni una transmissió fiable, és per transferir una gran quantitat de dades en molt poc temps, com per exemple, en les transmissions de vídeo o àudio per Internet i en temps real. És un protocol senzill que permet elevades velocitats de transmissió.
Els camps d’un segment UDP es representen en aquesta figura, amb la seva capçalera i la part de les dades:
Figura 5
Capçalera i camps de dades del protocol UDP.
Capçalera i camps de dades del protocol UDP.
Passem a descriure aquests camps:
  • Port origen i port destinació. Indiquen el nombre del port que inicia la transmissió al host origen i el nombre del port destí de la transmissió. Cadascun d’aquests camps tenen una longitud de 16 bits.

  • Longitud. Indica la longitud total del segment en bytes. Aquest camp té una mida de 16 bits.

  • Cheksum. Aquest camp, opcional en UDP, només permet al host destinació que comprovi si està lliure d’errors, per tal de descartar-lo i no enviar-lo a l’aplicació si en detecta. La seva longitud és de 16 bits.

  • Dades. Conté les dades enviades per l’emissor. La mida d’aquest camp és variable.

Tal i com hem comentat, un exemple concret de connexió UDP és el cas de streaming de vídeo o àudio. En el cas de visualitzar un vídeo o escoltar un fitxer d’àudio que tenim a la Xarxa Internet, aquest generalment es descarrega mentre l’estem visualitzant o escoltant, per tant, en temps real. Està baixant en streaming, que va associat al fet que va arribant sense interrupcions. La connexió emprada utilitza UDP enlloc de TCP, ja que no és tan important que arribi sense cap error com que la velocitat d’arribada sigui suficientment alta.

3.Transmission Control Protocol (TCP)

TCP, Transmission Control Protocol, és un protocol de nivell de transport que s’utilitza a Internet quan les aplicacions necessiten una transmissió fiable i lliure d’errors. De fet, és el protocol més complex i important de la pila de protocols d’Internet.
És un estàndard definit en el RFC 793, Transmission Control Protocol (TCP).
TCP envia un segment a la xarxa i fins que el seu emissor no rep un altre segment confirmant que ha arribat al destí no el dóna per enviat correctament. Si no arriba aquesta confirmació, després d’un període de temps determinat, l’emissor torna a retransmetre el segment TCP. Per a verificar que arriba a destí lliure d’errors, tots els segments enviats contenen una suma de comprovació. És el camp checksum, que correspon a SUMmation Check abreujat. Mentre no arriba a destí, on es comprova la seva correcció, no s’envia el paquet de confirmació a l’emissor.
TCP també proporciona control del flux garantint que el receptor no és col·lapsat amb més dades de les que el seu buffer pot arribar a emmagatzemar. Entenem per buffer com aquella àrea del host de destinació que s’utilitza per a emmagatzemar de forma temporal les dades que li arriben arran de la transmissió, fins que arriben a ser processades per l’aplicació destinació.
Com ja hem dit anteriorment, TCP és un protocol orientat a connexió, la qual cosa implica que l’emissor i el receptor de la transmissió acorden prèviament aquesta transmissió i com serà l’inici i el final de la mateixa. Per tant, TCP veu els bytes que envia com un flux constant i no com a segments separats. En aquest sentit, tots els segments presenten un número de seqüència per a controlar-ne l’ordre.

3.1.Funcionament del protocol TCP

Entrem amb una mica més de detall en el funcionament del protocol TCP. Abans que dos hosts puguin començar a intercanviar-se informació, han d’establir una sessió prèvia a la transmissió. Aquesta sessió s’inicia amb un protocol anomenat three-way handshake protocol. Amb aquest protocol es sincronitzen els números de seqüència i es procedeix a realitzar el control de la informació necessari per a establir la connexió virtual entre els dos hosts.
Una vegada ha finalitzat el protocol three-way handshake, els segments són enviats i confirmats de forma seqüencial entre el host emissor i el receptor. La connexió TCP és full-duplex, per tant, les dades flueixen en els dos sentits (emissor-receptor i receptor-emissor).
Un procés similar, anomenat handshake (que es pot traduir com “encaixada de mans”) es porta a terme abans de tancar la connexió, verificant que els dos hosts han finalitzat d’enviar i rebre tota la informació.
En definitiva, TCP proporciona fiabilitat a l’aplicació, garantint el lliurament de tota la informació en el mateix ordre que li ha transmès l’aplicació d’origen. Ho aconsegueix proporcionant un servei orientat a connexió amb control de flux i errors.
3.1.1.El segment TCP per dins
El format del segment TCP es representa en aquesta figura amb el detall dels camps de la capçalera:
Figura 6
Capçalera i camps de dades del protocol TCP.
Capçalera i camps de dades del protocol TCP.
Passem a descriure alguns dels principals camps:
  • Port origen i port destinació. Indiquen el nombre del port que inicia la transmissió al host origen i el nombre del port de destí de la transmissió. Cadascun d’aquests camps té una longitud de 16 bits.

  • Nombre de seqüència. Identifica el primer byte del camp de dades. De fet, TCP no numera segments, sinó que numera bytes. A partir de l’establiment de la connexió s’assigna un nombre inicial anomenat ISN (Initial Sequence Number) i, a partir d’aquest, es van numerant els bytes que s’envien. Aquest camp té 32 bits de longitud.

  • Nombre d’acusament de rebut ACK (acknowledgment number) o número reconegut. S’utilitza per enviar un acusament de rebut. Quan el bit ACK és actiu (val “1”), aquest camp indica el nombre de seqüència del segment que s’espera rebre a continuació. La seva longitud és de 32 bits.

  • Longitud de la capçalera. Igual que en el protocol IP, la capçalera és variable, ja que pot haver-hi opcions o no. Aquest camp indica la longitud en múltiples de 4 bytes.

  • Checksum o Suma de verificació. Aquest camp actua de la mateixa manera que hem vist en el protocol IP, amb la diferència que aquell només s’aplicava a la capçalera. Aquest s’aplica a tot el segment TCP i permet al host de destí determinar si el segment rebut té errors. La seva longitud és de 16 bits.

  • Punter d’urgència. És el darrer camp obligatori d’un encapçalament TCP. Quan el bit de control anomenat URG és actiu (val “1”), aquest camp de 16 bits indica que hi ha dades urgents en el camp dades i la seva localització.

  • Opcions i caràcter de farciment (padding). La mida d’aquest camp és variable i pot anar des de 0 a 32 bits, en funció de si el segment conté informació addicional (com per exemple, la mida màxima de segment que pot suportar una xarxa) o no. Si es fan servir opcions, la part de caràcters de farciment (padding) conté bits d’emplenament per tal que la mida total del camp arribi fins als 32 bits.

  • Dades. Conté les dades enviades pel host origen. La mida d’aquest camp és variable.

3.2.Els ports en el protocol TCP

Cada procés que desitja comunicar-se amb un altre s'identifica a la pila de protocols TCP/IP amb un o més ports. Un port és un nombre de 16 bits, emprat per un protocol extrem a extrem per identificar el protocol del nivell superior o programa d'aplicació on s'han de lliurar les dades rebudes.
La confusió que es produeix quan dues aplicacions diferents intenten usar els mateixos ports en un ordinador s'evita fent que sol·licitin un port disponible a TCP/IP. Com que aquest nombre s'assigna dinàmicament, pot ser diferent en cada execució d'una mateixa aplicació.
El protocol TCP identifica els extrems d'una connexió per les adreces IP dels dos nodes implicats (servidor i client) i el nombre dels ports de cada node.
Per tant, amb els ports, com a canals d'entrada/sortida que són, haurem d'adoptar algunes mesures bàsiques de seguretat. És important conèixer quins estan oberts i quin és el motiu pel qual estan oberts. Així podrem arribar a tancar els ports que no s'utilitzin, tenint sempre en compte que si tanquem un port d'un servei que estem utilitzant, aquest deixarà de funcionar.
És important conèixer els ports que tenim oberts en el nostre sistema. Per saber quins ports tenim oberts en el nostre ordinador es pot utilitzar algun programa que escanegi els ports. També existeixen escanejadors de ports en línia, comprovant si estan oberts, tancats o bé no existeixen. En tot cas, si detectem ports oberts això no necessàriament ha d'atribuir-se a un troià, sinó a les pròpies necessitats del sistema. I si tenim dubtes d'algun tipus d'infecció no cal dubtar en passar un bon antivirus. També pot arribar a donar-se la possibilitat que el nostre ordinador es vegi afectat per un escaneig de ports (temptejar les entrades i sortides per observar com es troben) sense la nostra autorització.
Una vegada detectats els ports oberts, podem, o bé bloquejar ports (amb algun programa dissenyat amb aquesta finalitat) o utilitzar un tallafocs. L'opció més utilitzada és la d'instal·lar un tallafocs. Amb ell determinarem a través de quins ports permetem l'accés al nostre sistema.
Tot seguit presentem un llistat amb l’associació de ports, protocols i aplicacions realitzada per IANA:

Número de port

Protocol

Aplicació o procés

7

TCP i UDP

Echo

20

TCP

FTP data

21

TCP

FTP control

22

TCP

SSH

23

TCP

Telnet

25

TCP

SMTP

53

UDP, TCP

DNS

67,68

UDP

DHCP

69

UDP

TFTP

80

TCP

HTTP

110

TCP

POP3

119

TCP

NNTP

143

TCP

IMAP

161

UDP

SNMP

443

TCP

SSL

16.384 - 32.767

UDP

RTP – per veu i vídeo

Enllaç
La llista oficial amb totes les assignacions de noms de serveis, ports emprats i protocol associat (TCP, UDP, DCCP i SCTP, aquests dos darrers protocols els descriurem en un proper apartat) la podem trobar a:

3.3.Exemples de connexió TCP

a) Exemple 1 - HTTP
Un usuari, des d’un navegador d’un host A, realitza una petició d’accés a l’adreça URL https://www.uoc.edu, que es localitza en un altre host remot B. Veiem amb detall el que succeeix a la xarxa:
Figura 7
Esquema bàsic de la petició web i resposta donada pel servidor.
Esquema bàsic de la petició web i resposta donada pel servidor.
Figura 8
Detall de l’actuació entre capes (aplicació i transport).
Detall de l’actuació entre capes (aplicació i transport).
Quan un navegador web sol·licita una pàgina a un servidor remot, li passa al nivell TCP tot un conjunt de bytes que contenen una petició HTTP i al davant una capçalera TCP on, entre altres camps,tenim: una adreça IP (del servidor) i un número de port, que en el cas d’HTTP és el port 80 (és el port on els servidors web esperen les connexions, “estan escoltant el port 80”). Com a port de sortida, TCP n’escull un que estigui lliure a l’atzar, per exemple el 1448. Aquest port de sortida és, realment, el port per on el host d’origen esperarà la resposta del host destí.
Així el segment serà:
Figura 9
Segment TCP creat pel host A, amb la capçalera TCP (amb els camps descrits) i el camp de dades que conté la petició HTTP.
Segment TCP creat pel host A, amb la capçalera TCP (amb els camps descrits) i el camp de dades que conté la petició HTTP.
Aquest segment passarà a IP, amb les adreces del host A i del host remot B en la seva capçalera, junt amb altres camps.
Així tindrem el paquet de dades IP següent:
Figura 10
Paquet de dades IP, amb la capçalera IP (amb els camps descrits) i el camp de dades que conté el segment TCP anterior.
Paquet de dades IP, amb la capçalera IP (amb els camps descrits) i el camp de dades que conté el segment TCP anterior.
Aquest paquet serà el que passarà per alguns routers, arribant al host B on hi ha el servidor web.
Figura 11
En aquest esquema, els paquets circularan per dues xarxes que estan enllaçades amb un router. Fixem-nos que les dues xarxes tenen rangs (128.143.137.x i 128.143.71.y) diferenciats.
En aquest esquema, els paquets circularan per dues xarxes que estan enllaçades amb un router. Fixem-nos que les dues xarxes tenen rangs (128.143.137.x i 128.143.71.y) diferenciats.
Figura 12
Quan el paquet arriba al host B, les diferents capes aniran extraient la informació que els correspon, des de la capa física fins a la capa d’aplicació.
Quan el paquet arriba al host B, les diferents capes aniran extraient la informació que els correspon, des de la capa física fins a la capa d’aplicació.
Mitjançant el nivell IP, aquest coneixerà l’adreça IP del host que li ha enviat la petició, sense cap altra informació. Quan el segment arriba al nivell TCP del host remot, ja detecta que va dirigit a l’aplicació associada al port 80 (HTTP). A més a més, veu el port origen de la petició a qui respon amb un missatge d’acusament de rebut. Les dades del segment TCP (les que hem anomenat petició HTTP) es passen a l’aplicació (tres nivells per sobre de la de transport, segons el model OSI) que les processarà. Aquesta agafa el fitxer que conté la pàgina web sol·licitada i la lliura al seu nivell IP:
Figura 13
Segment TCP creat pel host remot B, amb la capçalera TCP (ara el port origen és el 80 i el destí 1448, per tant, s’intercanvien) i el camp de dades que conté la resposta HTTP (pàgina web sol·licitada).
Segment TCP creat pel host remot B, amb la capçalera TCP (ara el port origen és el 80 i el destí 1448, per tant, s’intercanvien) i el camp de dades que conté la resposta HTTP (pàgina web sol·licitada).
Aquest segment es passa al nivell IP (també intercanviant les adreces IP):
Figura 14
Paquet de dades IP creat en el host remot B, amb la capçalera IP (amb els camps descrits) i el camp de dades que conté el segment TCP anterior.
Paquet de dades IP creat en el host remot B, amb la capçalera IP (amb els camps descrits) i el camp de dades que conté el segment TCP anterior.
Aquest paquet fa el camí de tornada per la xarxa, molt possiblement, passant per routers diferents i arriba al host A, que està esperant la resposta del port pel qual ha enviat la petició (en el nostre exemple, el 1448).
b) Exemple 2 - Telnet
Telnet és també un servei que utilitza TCP/IP per a connectar-se a un host remot. El protocol corresponent, que té el mateix nom, pertany a la capa d’aplicació. Un client fa una sol·licitud de comunicació a un servidor pel port 23, aleshores el servidor reconeix que el client està interessat en iniciar una sessió Telnet. Llavors, el servidor connecta el port Telnet del client -el 23 per defecte- i estableix un circuit virtual.

3.4.L’aplicació netstat

La majoria de sistemes operatius ofereixen eines que permeten mostrar les connexions de xarxa que tenim a cada moment. Entre elles tenim l’aplicació netstat. Per executar-la introduirem en la pantalla de sistema: netstat -an
Per entendre millor quines connexions tenim obertes, el millor és que abans d'executar aquesta ordre tanquem tots els programes a excepció de la pantalla de sistema oberta, per així anar des del principi comprovant quines connexions tenim i quines es van obrint.
Si volem que s'actualitzi automàticament la informació, podem escriure netstat -an 5 (posar el nombre en segons de l'interval que vulguem que actualitzi la informació).
Per obtenir una petita ajuda en relació a netstat executarem: netstat /help
Un exemple de la informació que ens facilita netstat és la que es mostra en aquesta imatge:
Figura 15
Pantalla en la que es mostra el detall de la informació que ens facilita la comanda netstat. En la primera columna el protocol emprat (TCP o UDP). Podem també comprovar que, al principi, al no estar connectats a internet, tenim adreces locals, però no tenim adreça remota (equips als quals ens connectem). Tots els estats estan en listening, la qual cosa significa que el port està disponible. En connectar-nos a Internet veiem que se'ns obren nous ports entre els quals hi ha el 3284, que és la connexió amb el servidor. Quan utilitzem el navegador per intentar connectar-nos a una adreça web, podem veure que se'ns obre automàticament el port 80 que és el de www.
Pantalla en la que es mostra el detall de la informació que ens facilita la comanda netstat. En la primera columna el protocol emprat (TCP o UDP). Podem també comprovar que, al principi, al no estar connectats a internet, tenim adreces locals, però no tenim adreça remota (equips als quals ens connectem). Tots els estats estan en listening, la qual cosa significa que el port està disponible. En connectar-nos a Internet veiem que se'ns obren nous ports entre els quals hi ha el 3284, que és la connexió amb el servidor. Quan utilitzem el navegador per intentar connectar-nos a una adreça web, podem veure que se'ns obre automàticament el port 80 que és el de www.

4.Altres protocols de la xarxa de transport

A més a més dels protocols esmentats TCP i UDP emprats a la capa de transport, hi ha d’altres protocols d’aquesta capa de transport que s’utilitzen en diferents àmbits i situacions en substitució de TCP i UDP. Tot seguit passarem a descriure els protocols DCCP (Datagram Congestion Control Protocol) i SCTP (Stream Control Transmission Protocol).

4.1.DCCP

El protocol DCCP, acrònim de Datagram Congestion Control Protocol (DCCP) o Protocol de Control de Congestió de Datagrames), és un protocol de nivell de transport orientat al missatge, és a dir, orientat a connexió.
L’utilitzen aquelles aplicacions que tenen necessitat d’un enviament ràpid de les dades, però amb un correcte control de la congestió. Per exemple, la telefonia a Internet o multimèdia en temps real, entre d’altres.
El fet d’emprar DCCP en aquesta capa, fa que les aplicacions no hagin d’implementar el control de la congestió dins el nivell d’aplicació.
Per tant, dóna bona resposta a aplicacions que seguint la semàntica basada en flux de TCP, no necessiten ni la fiabilitat ni el lliurament ordenat de la informació que ofereix TCP o, fins i tot, que volen un control de la congestió diferent i més uniforme per a les aplicacions.
Abans que sorgís aquest protocol, si no es volia utilitzar TCP, sovint s’emprava UDP dotant-lo de mecanismes addicionals de control de la congestió. DCCP va ser publicat com a RFC 4340, en la categoria d’estàndard proposat per l’IETF el març de 2006.

4.2.SCTP

El protocol SCTP, acrònim de Stream Control Transmission Protocol, és un protocol de la capa de transport definit per l’IETF l’any 2000. El protocol està especificat en la RFC 2960 i la RFC 3286.
No deixa de ser una alternativa als protocols de transport TCP i UDP, ja que ofereix fiabilitat, control de flux i seqüència com TCP. Tot i així, de forma opcional SCTP permet l’enviament de missatges de forma desordenada i, a diferència de TCP, és un protocol orientat al missatge (similar a UDP).

5.Aplicacions específiques per a xarxes locals: analitzadors de protocols

En el cas que vulguem analitzar l’estat de la xarxa, necessitem saber el tipus de dades que hi circula. Per fer-ho, podem utilitzar analitzadors de protocols que permeten obtenir mostres del trànsit de la xarxa en temps real i posteriorment analitzar-les.
Els sistemes operatius Linux integren diferents eines per a portar-ho a terme (tcpdump...). En d’altres sistemes operatius, com Windows, es poden instal·lar. En aquest sentit, a continuació, destaquem algunes de les aplicacions específiques que permeten reconèixer i obtenir algunes característiques de la xarxa local, dels equips connectats, del trànsit...
1) Overlook fing:
Figura 16
Figura 16
Disponible per a ordinadors amb Windows, OS X i Linux. També és una app (per Android o iOS) que permet l’anàlisi de la xarxa en la que estiguem. Neix a partir de l’antiga Look@LAN, una aplicació que permetia realitzar una completa anàlisi de la xarxa local, de manera senzilla i totalment automatitzada. La interfície principal de l'aplicació mostra tota la informació recopilada com a resultat de l'anàlisi: adreça IP, estat, grup de xarxa, sistema operatiu, nom del host, usuari, etc.
Aquest analitzador el podeu descarregar a: https://www.overlooksoft.com/
Per a detalls més concrets del seu funcionament, es pot visualitzar el següent vídeo: https://www.youtube.com/embed/0EkiPPwv010?rel=0& controls=0&showinfo=0
2) SoftPerfect Network Scanner (aplicació freeware):
Figura 17
Figura 17
Realitza un escaneig de la xarxa per a poder facilitar els seus paràmetres. El podeu obtenir a:https://www.softperfect.com/products/networkscanner/
3) NetworkView 3.50 (aplicació shareware):
Figura 18
Figura 18
Aquesta és una aplicació útil per a realitzar estudis de xarxes locals i crear diagrames amb la distribució dels ordinadors i les connexions existents entre ells. Amb NetworkView es pot traçar, en poc temps, un complet esquema de la vostra xarxa local, detectar tots els nodes de TCP/IP i les seves rutes utilitzant la informació facilitada pels DNS, SNMP i els ports TCP. Aquesta eina es troba disponible a www.networkview.com.
4) Wireshark:
Figura 19
Figura 19
Aquesta és una altra utilitat també molt interessant per a analitzar protocols i capturar paquets que circulen per la xarxa. Abans era coneguda com Ethereal.
Wireshark és un analitzador de protocols, utilitzat, entre d’altres, per a l’anàlisi i solució de problemes en xarxes. Les seves funcionalitats són semblants a les de tcpdump però incorpora una interfície gràfica.
Té una versió per Windows o per Mac OS X d’Apple. Les podeu trobar a: https://www.wireshark.org/. Si voleu més informació, podeu utilitzar el manual Análisis de tráfico con Wireshark de INTECO-CERT (https://www.incibe.es/CERT/guias_estudios/guias/guia_wireshark).