在线客服
扫描二维码
下载博学谷APP扫描二维码
关注博学谷微信公众号
什么是网络编程?它是做什么的?简单解释一下,网络编程就是两台设备之间进行数据交换,最终到达通信的目的。要想深入的了解网络编程,我们必须弄清楚IP地址、端口号和网络协议这三者的概念,本文将会用最通俗易懂的例子,帮助大家理解网络编程的概念。
1、什么是网络编程?
大家应该都网购过,网购之后,这个商品是怎么到自己手上的呢?这个商品被快递公司打包,然后通过物流运输,最后根据你在购物网站上填写的地址,送到某个快递点,然后快递小哥通过你填写的手机号联系你,你就取到了快递,最后你把快递包裹拆掉,就拿到了你买的商品。
网络编程和网购很像,网络编程是两台设备之间进行数据交换,例如一台计算机(接收端)要获得另一台计算机(发送端)的数据,网络编程就是在发送端把信息通过规定好的网络协议进行组装包,通过互联网传输,通过IP地址和端口号,找到你的数据接收端,最后在接收端按照规定好的网络协议将数据包进行解析,从而提取出对应的信息,达到通信的目的。在这个例子中,发送端就像是网购的商家,接收端就是购物的自己,IP地址就像是你在购物网站上填写的地址,端口号就像是你的手机号,网络协议就像是快递的包装袋(在发送端包装数据,在接收端解析数据),最终我们就能获得想要的数据,这个过程就像是一次网购。
了解了什么是网络编程,但是又多出来三个新的概念——IP地址、端口号和网络协议,虽然他们就像是网购商品一样可以理解为快递地址、手机号和快递包装袋,但是它们到底是什么,在网络编程中又扮演什么角色?这些都是我们需要深入了解的内容。
2、网络编程三要素——IP地址
相信你肯定听过很多次“IP地址”这个词,像设置路由器,家里断网,和朋友打局域网游戏,传输文件等等这些情境下都可能会提到“IP地址”。 IP地址是什么,有什么用呢?简单来说,IP地址就像是你的家庭地址,通过家庭地址,快递能找到你,外卖也能找到你,IP地址就是计算机,服务器或者网站的位置,用户可以通过IP地址找到各个网站,找到某台计算机。IP地址是一串数字的组合,相信你应该见过,例如:192.168.1.100,这就是一串IP地址,IP地址可以让网络上的其他计算机找到你。
IP地址主要分为两种:公网IP:这个IP很厉害,每个公网IP在全球都是唯一的;内网IP(局域网IP):这个IP在教室,或者家里,公司里是唯一的。像我们平常使用的是内网IP(局域网IP),比如你要用自己的计算机控制朋友或者家里人的计算机,那你就需要知道对方在局域网内的IP地址,而公网IP则是大多数网站服务器或者游戏服务器使用的IP地址,具备公网IP的服务器可以让互联网上的所有人都能访问到,例如QQ、微信、百度它们的服务器都是使用的公网IP。
3、网络编程三要素——端口号
通过IP地址可以找到某台计算机,但是我们如果想访问的是某台计算机里的某个应用程序呢(比如:网站服务端程序)? 我们知道计算机是可以运行多个应用程序的,而要单独找到某一个应用程序通过IP地址是不够的。那通过什么呢?答案是通过IP地址+端口号。
端口其实是一个虚拟的概念,并不是说在主机上真的有若干个端口。通过端口,可以在一个主机上运行多个网络应用程序。假设现在你有一台计算机,计算机上部署了 10 个网站服务端程序,另外有人知道了你的IP地址,想要分别访问你的 10 个服务端程序,如何定位到这10个程序呢?通过“IP地址+端口号”就可以访问这台计算机,并定位到每一个程序,假设这10个程序的端口号分别是 1 - 10 那么就可以通过“ip地址:端口号”来访问这10个程序了,例如:192.168.20.100:1 访问的就是端口号为 1 的程序。
4、网络编程三要素——通讯协议
当我们和其他人沟通交流的时候都要使用互相能听懂的语言。计算机也一样,计算机与计算机通过网络进行数据和信息交换的时候,也要使用同样的“语言”,这个语言被称为网络通讯协议。就像语言有英语、中文、法语等等一样,网络通讯协议也有很多种类型。总的来说,网络通讯协议都是基于网络模型构建起来的,所以要真正掌握网络协议我们还需要从网络模型说起。网络模型是一个概念,是一个在制定标准时所使用的概念性框架,比如社团就是一个框架,基于社团可以构建出:文学社、计算机社团等等,网络模型也是一样,基于网络模型可以构建出各种网络通讯协议。
什么是网络编程?看到这里,想必大家心中已经有答案了。如果想学习更多关于网络编程的干货内容,尽在博学谷互动课堂~
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
女孩子毕业后学习什么技术有前途?可以学互联网技术吗?
虽然女孩子毕业后可以从事的工作岗位非常多,但是考虑到长期的职业发展,毕业的女生更喜欢学习一门技术。那对于女孩子而言学什么技术比较有前途呢?是否可以学习互联网技术呢?
7164
2019-08-07 18:23:18
如何判断自己适不适合学IT?零基础能学好IT吗?
如何判断自己适不适合学IT?零基础能学好IT吗?其实学IT远没有大家想的那样困难,与其担心自己适不适合,不如马上尝试看一些IT相关的视频学习资料,看看自己有没有兴趣坚持学下去。至于零基础的学习者,只要愿意学习,且有正确的学习方法辅助,一年内就能学好IT上手工作。
6988
2019-10-30 09:24:48
计算机程序员培训难不难?要多久?
随着近些年来互联网技术的高速发展,IT行业迎来了蓬勃发展的好势头,对IT技术人才的需求也在不断扩大。为了把握技术发展的红利,许多非科班出身的初学者,也想通过培训进入IT这个朝阳行业。那么很多人会问:计算机程序员培训难不难?要多久?程序员的培训属于高端技术培训,难度肯定是有的,至于学习时间要根据培训机构的课程安排和自己的学习情况判断。
7936
2020-06-17 18:13:54
敏捷开发如何提高工作效率?
敏捷开发应对快速变化的需求的一种软件开发能力,只要在符合价值观和原则的基础上能让开发团队拥有应对快速变化需求的能力。在团队职责上,团队内部具备完成软件交付的角色,团队所有人对软件的质量负责,开发过程由团队内部把控,业务价值团队内部快速流动,在任何环节都能及时获得反馈。
6287
2020-07-09 10:59:19
计算机基础知识及概念分享
计算机基础知识及概念分享,学习编程掌握计算机基础知识是基本的要求,要了解计算机组成原理、计算机网络、操作系统5、软件工程、设计模式、数据库、数据结构与算法、编译原理等相关内容,还要了解一些与之相关的内容。
4307
2021-04-07 15:46:30