【二】、如何进行网络通信

【二】、如何进行网络通信

前言

大发pk10我 觉得学习网络编程就是了解计算机之间如何进行网络通信,从上一篇《学网络编程前的计算机知识普及》中,大发pk10我 对计算机的一些基础常识进行了普及,让读者对计算机的大发pk10软件 、硬件以及操作系统有了一个清晰的认知。大发pk10我 在其中介绍了一个完整的计算机系统由三层结构构成,大发pk10我 再把那张图引用一下,方便后面知识的学习。

网络通信

大家要先了解两个词:

  • 客户端(Client)
  • 大发pk10服务 器端(Server)

大发pk10你 要是没听过这两个词,就先暂时把它们想象成是两个大发pk10软件 ,大发pk10大发pk10我 们 假如想要开发这两个大发pk10软件 ,让它们基于网络通信。那这个客户端大发pk10软件 和大发pk10服务 器端大发pk10软件 肯定不是操作系统吧,大发pk10你 要明白,大发pk10大发pk10我 们 学习Java、Python是为了成为应用开发程序员,而不是开发操作系统的,大发pk10大发pk10我 们 只需要用别人开发好的操作系统。那大发pk10大发pk10我 们 确定客户端大发pk10软件 和大发pk10服务 器端大发pk10软件 一定是应用大发pk10软件 ,它们要想执行,过程跟上面图片中所讲的一样吧。如下图:


看见这张图大发pk10你 应该清晰了,然后大发pk10大发pk10我 们 说要基于网络让两台计算机进行通信,那这两台计算机之间应该有一根网线连接才能通信吧,然后客户端大发pk10软件 想把硬盘中的信息发送给大发pk10服务 器端大发pk10软件 ,就需要先通过操作系统控制硬盘,然后通过网线传输给大发pk10服务 器端,大发pk10服务 器端要想给客户端发送消息亦是同理。

在这张图中有客户端大发pk10软件 到操作系统再到计算机硬件这个过程大发pk10大发pk10我 们 已经明白了,现在大发pk10大发pk10我 们 研究的重点应该是两台计算机进行信息传输中如何通过网络进行传输。

 

大发pk10我 举一个大发pk10生活中用来通信的例子,比如说现在把大发pk10我 和大发pk10我 的电话(有线电话)看成是一台计算机,大发pk10我 是大发pk10青海 的,大发pk10我 要给大发pk10河南 的某同学打电话,首先两个电话是不是得用线连着,能保证打通,然后大发pk10我 跟他打电话,他是大发pk10河南 人,听不懂大发pk10青海 方言,那大发pk10我 得用大发pk10河南 话或者普通话跟他沟通,然后大发pk10我 又给一个大发pk10广东 的朋友打电话,大发pk10我 不会说大发pk10广东 话,他说大发pk10广东 话大发pk10我 也听不懂,因此大发pk10大发pk10我 们 只能用普通话沟通。那为了沟通方便,跟不同省份的人打电话,大发pk10大发pk10我 们 应该制定一套大家都能遵循的规范,一种协议,无论大发pk10你 是哪的人,在打电话的时候都要用统一的标准普通话。那大发pk10大发pk10我 们 不一定只给中国人打电话,如果大发pk10大发pk10我 们 要给外国人打电话,这个协议就不行了,世界的通用语言是英语,如果要在全世界之间通信,那大发pk10大发pk10我 们 得重新制定一份大家都能遵循的协议——英语

再切换过来,大发pk10我 上面说把大发pk10我 和大发pk10我 的电话看成是一台计算机,那上面的情景就相当于是计算机和计算机之间进行通信,那计算机和计算机进行通信所遵循的协议就是大发pk10互联网 协议。什么是协议?就跟合同一样,大家都按上面的去做,换句话说,大发pk10互联网 协议就是计算机界的英语,这没毛病吧。看下图:

此篇完

此篇到此先结束吧,今天被车给撞了,虽然捡了一条命,但心情还是受影响的,不过还是把这篇补完了,世事无常,珍爱生命,且行且珍惜!

posted @ 2019-11-08 16:53  泰斗贤若如  阅读(...)  评论(... 编辑 收藏