トランスポート層
トランスポート・プロトコルは、トランスポート層(第四層)の通信プロトコルである。インターネットにおける2大トランスポート・プロトコルとして、コネクション型の「TCP」(Transmission Control Protocol)と、コネクションレス型の「UDP」(User Datagram Protocol)がある。その他、Datagram Congestion Control Protocol(DCCP)やStream Control Transmission Protocol(SCTP)が有る。
トランスポート層は通常はホストコンピュータのオペレーティングシステム上のプロセスに制御され、ルータやスイッチには制御されない。通常トランスポート層は、ネットワーク層(第三層)によって提供された信頼性が低く極めて基本的なサービスを、より強力な物へ転換する。
TCP/IPモデルでは、トランスポート層はホストコンピュータ上の適切なアプリケーションプロセスにデータを配送する責任が有る。これは異なったアプリケーション・プロセスからのデータの統計的多重化、すなわちデータのパケット化、およびトランスポート層の各データ・パケット・ヘッダへの送信元/送信先ポート番号の追加を伴う。送信元および送信先のIPアドレスと共に、そのポート番号はネットワーク・ソケット、すなわちプロセス間通信の識別アドレスを構成する。OSI参照モデルでは、この機能はセッション層が対応している。
トランスポート層は、通信をパケット単位ではなくバイト単位のデータ列に変換する機能を付加しても良い。これにより不揃いな大きさのパケットを簡便に取り扱う事ができる。
コンピュータ上のメモリの量には限りがあるので、受信機器がフロー制御をしないと、処理しきれないほどの大量の情報でメモリを溢れさせる可能性がある。今日では、帯域幅が比較的高価であるのに対してメモリは安価なのでこれは大きな問題ではないが、初期の頃は重大な問題だった。フロー制御は受信者のバッファメモリが溢れる前にデータの転送レートを抑えるものである。ネットワーク層によって既にフロー制御が提供されている時もあるが、それが無い場合にトランスポート層が付け加える事がある。UDPではフロー制御はできない。
ネットワーク層はコネクションレス・サービスしか提供しないが、アプリケーションが利用する上ではコネクション指向のほうが容易なため、しばしばコネクション指向サービスはトランスポート層の中の最上部に組み込まれる。
AEP, AppleTalk Echo Protocol
ATP, AppleTalk Transaction Protocol
CUDP, Cyclic UDP
DCCP, Datagram Congestion Control Protocol
FCP, Fiber Channel Protocol
FCIP, Fiber Channel over TCP/IP
IL, IL Protocol
iFCP, Internet Fibre Channel Protocol
iSCSI, Internet Small Computer System Interface
NBP, Name Binding Protocol
NBF, NetBIOS Frames protocol
SPX, Sequenced Packet Exchange
RTMP, Routing Table Maintenance Protocol
SCTP, Stream Control Transmission Protocol
SCSI, Small Computer System Interface
TCP, Transmission Control Protocol
UDP, User Datagram Protocol
UDP-Lite