TCP/IP-它到底是什么?

TCP/IP-它到底是什么?

我知道这个问题听起来很愚蠢,但这么多年过去了,我仍然很难向人们解释 TCP/IP。我自己也不完全明白,即使读过之后,区别也不是很清楚。到目前为止,我所理解的是 IP 处理网络,而 TCP 涉及通过该网络传递消息。但我并不完全相信。而且,它们位于互联网架构的不同层上。有人能用一个简单的类比或例子来消除这种区别吗?另外,我在某个地方读到过这个

不同之处在于 TCP 负责数据包的数据传输,而 IP 负责逻辑寻址。换句话说,IP 获取地址,而 TCP 保证将数据传送到该地址。

这是正确的吗?谢谢你的帮助。最后一件事——以太网在这一切中起什么作用?

答案1

打个比方。你经营着一个间谍网络。所有间谍都使用信鸽与总部(你)进行通信。他们向你发送消息,你也向他们发送消息。

问题:有时消息无法到达,或者到达顺序混乱。鸟儿会迟到,会停下来吃东西,有时猫也会收到消息。

这就是 IP。它发送数据包并希望它们到达目的地。

当然,这是不令人满意的。因此,你与你的间谍商量好,在每条消息中添加一些额外的信息:发送消息的时间、发送上一条消息的时间、一个连续的数字。此外,如果收件人在一定时间内没有确认消息,他们应该重新发送。现在你可以知道是否有任何遗漏或混乱的信息。

这就是 TCP。它使用不可靠的协议 (IP) 来建立可靠的连接。

答案2

类比就像真空吸尘器,会吸入。

OSI 模型是为了描述网络堆栈各层所起的不同作用而发明的。每层都相当小,而且相对容易理解。IP 并不完全遵循该模型,但还是比较接近。

以太网- 从底层开始,以太网是允许计算机使用的有线协议;它通常涉及物理连接的细节以及计算机如何通过插入计算机背面的电线传输数据。

知识产权由于以太网已经处理好了物理细节,接下来需要处理的逻辑细节是最通用的逻辑细节。IP 基本上负责逻辑寻址和网络内概念(“网络上”的计算机集合)。因此,不在您的网络上的计算机会自动位于其他网络上,并且 IP 如何将流量从您的网络转移到另一个网络是有规则的。

TCP 和 UDP这只是该层上最流行的两种协议,还有许多其他协议,人们通常不太熟悉它们。TCP 是跟踪连接的最低层;例如当您连接到 Web 服务器以请求网页时。UDP 是一种类似的协议,但明确不跟踪连接。这使得 UDP“更轻”、更简单,如果您只需要发送一条消息,这更有意义,同样,如果您需要最小化数据发送(例如在线视频游戏),也是如此。

HTTP、DNS 等实际的应用协议建立在前面的层之上。您可能知道,实际的应用协议有数百万种。这些协议定义了通过网络发送的数据结构,并允许不同的程序“使用相同的语言”。

SSL 和 IPSec还有其他协议实际上位于其他层之间。例如,SSL 位于 TCP 和 HTTP 之间以产生 HTTPS;相同的通信但具有加密(通常)。IPSec 是一种位于 IP 和 TCP 之间的不同安全协议,其工作方式与 SSL 略有不同,但通常提供一些相同的保护。

答案3

为了尽可能简单,IP 协议回答了“如何从计算机 A 向计算机 B 发送消息”的问题。这与汽车导航系统的任务大致相同。

另一方面,TCP 回答了以下问题:“我如何从计算机 A 上的应用程序 X 向计算机 B 上的应用程序 Y 发送消息,以确保我的消息被正确接收?”

IP 就像邮件递送服务。假设您想通过邮件向您的朋友发送 2 件大礼物:礼物太大,无法装进一个包裹,因此邮局要求您准备 2 个不同的盒子,每件礼物一个。然后他们会分别发送每个盒子:他们会尝试找到通往您朋友家的路径,但您不知道哪个盒子会先到达,有时某个盒子会丢失。

相反,TCP 就像电话服务:一旦您与接收者之间的通信建立,您的话语就会按照您说的顺序传递给对方。如果您说话太快,您的朋友会要求您以较慢的速度重复最后一句话。TCP 会为您的字节流完成所有这些操作。

TCP 将消息拆分成小块,并请求 IP 将它们传送到正确的目的地:一旦它们到达,TCP 将确保每个块都处于正确的位置,以重新形成原始消息

相关内容