什么是网络?
所谓网络,就是通过一定的形式连接起来的物体,物体与物体之间可以实现通信。
比如这样的,就称为计算机网络。它可以实现计算机之间的通信。
抑或是这样的,就被称为神经网络。它可以通过生物的突触进行信号通信。最近深度学习,人工智能大量运用了神经网络的工作机制。
抑或是这样的,就被称为物联网络。它可以实现万物互联,想想还有点小激动呢,不知是福是祸。
只要是你能想到的,可以通过一定形式连接起来的,都能被称为网络。阿猫阿狗也可以构成网络,我们或许可以通过神奇的仿生技术,将阿猫阿狗互联,让它们实现通信沟通无障碍,这不就是万物语言互联网络嘛。好期待这一天的到来。
-
神奇的计算机网络
1.1 计算机网络的三种通信方式 什么是计算机网络,想必你也知道,就是计算机与计算通信。以下是一些计算机常用的三种通信方式,你应该知道。 1.单播,即两台计算机通过特有的通道进行通信。 2.广播,即多台计算机在一定的范围内通信(本地子网范围),当某一计算机发送消息,其他所有的计算机都会受到信息。 3.组播,即发送者和接受者可以实现多种通信方式,这种方式以小组的形式存在,既可以是同一物理网络,也可以是不同的物理网络。这样一来,就能极大地提升通信的速率。
1.2 计算机通信协议 有没有想过计算机是如何实现通信的?计算机通过电,网卡以及网络就能够实现全世界通信,这不是很厉害的一件事吗?人类通信依靠语言,那计算机自然也通过语言来进行通信。那计算的语言是什么呢?其实计算机是通过二进制这种语言进行通信的。那所谓语言,自然遵守一定的规则,这和人类的语言是一样的。中国说汉语,美国说英语,动物说动物语,计算机自然说计算机语。每种语言都有一定的规则以及语言,那计算自然也如此。最早的时候,有个很牛逼的组织,满怀抱负,准备给计算机网络通信制定一个通信规则。这个规则叫做OSI七层模型,这个组织叫做国际标准化组织(ISO)。后来,经过伟大的先贤通过不断地实践与摸索,不断地掉入坑里,再爬出坑里,经过了几番伟大的挣扎,终于制定出了沿用至今的计算机通信TCP/IP模型。对于这些智者,除了惊叹和膜拜之外,我们还能做什么呢?有,那就是好好学习TCP/IP模型,不能辜负了智者们智慧的结晶。
1.3 OSI和TCP/IP模型 如下图所示,对比了TCP/IP五层模型与OSI模型。不难发现下四层存在一一对应关系,而OSI的上三层则被包含在应用层一层了。TCP/IP五层模型(也有人认为是四层,他们将物理层与数据链路层合为一层。)无疑已经成为了国际通用的标准,而OSI模型虽然可靠性更高,但由于层次较多,实施起来困难重重,不符合实际情况,所以到现在就不了了之了。
各个层次对应的功能如下图。注意下图是OSI七层模型对应的关系,至于TCP/IP五层模型则只需要把下图的上三层包含在内即可。相信你懂的。
2. TCP/IP五层模型简介
计算机的通信是由底层物理层开始,顶层应用层结束。越底层越接近硬件,越顶层越接近用户,与用户打交道。那计算机是如何一层一层往上爬,通过什么介质或者是通过什么协议走上了人生巅峰(实现网络互连)?下面我将一一道来。
1.物理层,
物理是干嘛的?实现二进制数据传递,这太复杂了。其实就是通过电缆、双绞线,无线电波等方式连接了起来。就像这样。
2.数据链路层
将比特流数据成帧,通过MAC地址的方式可以实现本地网段的计算机通信。MAC地址是如何实现本地网段计算机的通信的呢?这里涉及到了一个ARP协议,我将在下节进行讲解。MAC地址是全球唯一的,镶嵌到每个网卡上,代表着每台计算机独一无二的地位。本地网段的计算机通信,就是通过网卡的MAC地址标识的,网卡是这样的。
3.网络层
网络层最重要的当然是IP了。这么说吧MAC地址只能让你实现本地网段通信,但是有了IP后,你就能实现跨网段的通信了。跨网段通信涉及到了路由设备,交换机等。网络层也涉及了ARP协议,RARP协议,IP协议以及ICMP协议。这都会在下一节进行讲解。
4.传输层
传输层的功能,就是建立"端口到端口"的通信。有了MAC地址(实现本地通信),有了IP地址(实现跨网段通信),再加上端口,就能够同应用层的应用程序进行通信了。你也可以这么理解,端口就是通往应用层的接口。传输层有TCP,UDP协议,它们决定了通信的可靠性,决定了与应用层通信的方式。两者各有优点,TCP更可靠,UDP更快。
5.应用层
"应用层"的作用,就是规定应用程序的数据格式。 比如FTP有FTP的数据包格式,这也是通过协议的方式限定了服务的格式。FTP有FTP协议,e-mail有SMTP协议,远程连接有SSH协议,域名解析有DNS协议。应用层就是制定了应用程序的协议。
本文转自 PowerMichael 51CTO博客,原文链接:http://blog.51cto.com/huwho/1920891,如需转载请自行联系原作者