📜  互联网协议

📅  最后修改于: 2020-12-14 05:56:51             🧑  作者: Mango


传输控制协议(TCP)

TCP是面向连接的协议,并提供端到端的数据包传递。它充当连接的背骨,具有以下主要特征:

  • 传输控制协议(TCP)对应于OSI模型的传输层。

  • TCP是一种可靠的面向连接的协议。

  • TCP提供:

    • 流数据传输。

    • 可靠性。

    • 高效的流量控制

    • 全双工操作。

    • 多路复用。

  • TCP提供面向连接的端到端数据包传递。

  • TCP通过使用转发确认号对字节进行排序来确保可靠性,该转发确认号向目的地指示源希望接收的下一个字节。

  • 它重传在指定时间段内未被确认的字节。

TCP服务

TCP为应用程序层的流程提供以下服务:

  • 流传送服务

  • 发送和接收缓冲区

  • 字节和段

  • 全双工服务

  • 面向连接的服务

  • 可靠的服务

流交付服务

TCP协议是面向流的,因为它允许发送过程以字节流的形式发送数据,并允许接收过程以字节流的形式获取数据。

发送和接收缓冲区

发送和接收过程可能无法以相同的速度生成和获取数据,因此,TCP需要在发送和接收端存储的缓冲区。

字节和段

传输层的传输控制协议(TCP)将字节分组为一个数据包。该数据包称为段。在传输这些数据包之前,将这些段封装到IP数据报中。

全双工服务

在双工模式下发送数据意味着同时在两个方向上的数据流。

面向连接的服务

TCP通过以下方式提供面向连接的服务:

  1. 进程1的TCP通知进程2的TCP并获得其批准。

  2. 过程TCP – 1和过程TCP – 2,并在两个方向上交换数据。

  3. 完成数据交换后,当两端的缓冲区都为空时,两个TCP将销毁其缓冲区。

可靠的服务

为了可靠性,TCP使用确认机制。

互联网协议(IP)

Internet协议是无连接且不可靠的协议。它不能保证成功传输数据。

为了使其可靠,必须在传输层将其与诸如TCP的可靠协议配对。

Internet协议以数据报的形式传输数据,如下图所示:

internet_technologies_tutorial

要记住的要点:

  • 数据报的长度是可变的。

  • 数据报分为两部分:标题数据。

  • 标头的长度为20到60个字节。

  • 标头包含用于路由和传送数据包的信息。

用户数据报协议(UDP)

像IP一样,UDP是无连接且不可靠的协议。不需要与主机建立连接即可交换数据。由于UDP是不可靠的协议,因此没有机制可以确保接收到发送的数据。

UDP以数据报的形式传输数据。 UDP数据报由五个部分组成,如下图所示:

internet_technologies_tutorial

要记住的要点:

  • UDP通常用于一次传输少量数据的应用程序。

  • UDP提供使用的协议端口,即UDP消息同时包含源端口号和目标端口号,这使得目标位置的UDP软件可以将消息传递到正确的应用程序。

文件传输协议(FTP)

FTP用于将文件从一台主机复制到另一台主机。 FTP通过以下方式提供了相同的机制:

  • FTP在两端(即在客户端和服务器上)创建两个过程,例如控制过程和数据传输过程。

  • FTP建立了两种不同的连接:一种用于数据传输,另一种用于控制信息。

  • 控制连接的控制过程之间进行,而数据连接之间进行

  • FTP使用端口21进行控制连接,使用端口20进行数据连接。

internet_technologies_tutorial

普通文件传输协议(TFTP)

平凡的文件传输协议也用于传输文件,但它无需身份验证即可传输文件。与FTP不同,TFTP不会分隔控制和数据信息。由于不存在身份验证,因此TFTP缺乏安全功能,因此不建议使用TFTP。

关键点

  • TFTP利用UDP进行数据传输。每个TFTP消息都承载在单独的UDP数据报中。

  • TFTP消息的前两个字节指定消息的类型。

  • 当TFTP客户端发送上载或下载文件的请求时,将启动TFTP会话。

  • 该请求从临时UDP端口发送到TFTP服务器的UDP端口69

FTP和TFTP之间的区别

S.N. Parameter FTP TFTP
1 Operation Transferring Files Transferring Files
2 Authentication Yes No
3 Protocol TCP UDP
4 Ports 21 – Control, 20 – Data Port 3214, 69, 4012
5 Control and Data Separated Separated
6 Data Transfer Reliable Unreliable

远程登录

Telnet是用于登录Internet上的远程计算机的协议。有许多具有用户友好用户界面的Telnet客户端。下图显示一个人登录到计算机A,然后从那里远程登录到计算机B。

internet_technologies_tutorial

超文本传输协议(HTTP)

HTTP是一种通信协议。它定义了浏览器和Web服务器之间的通信机制。它也称为请求和响应协议,因为浏览器和服务器之间的通信是在请求和响应对中进行的。

HTTP请求

HTTP请求包含以下行:

  • 请求行

  • 标头字段

  • 邮件正文

关键点

  • 第一行,即“请求”行指定了请求方法,即“获取”或“发布”。

  • 第二行指定标头,该标头指示从中检索index.htm的服务器的域名。

HTTP响应

像HTTP请求一样,HTTP响应也具有一定的结构。 HTTP响应包含:

  • 状态行

  • 标头

  • 邮件正文