清晰讲解网络编程概念性问题

Posted 0627zhou

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了清晰讲解网络编程概念性问题相关的知识,希望对你有一定的参考价值。

1.网络基础相关知识

  a:C/S架构:client(客户端) server(服务器端)

  技术分享图片

   优点:能充分发挥PC机的性能(原理是你下载一个软件,通过这个软件和你PC机进行信息通信)

   缺点:1.系统安装调试维护和升级都比较困难。因为在安装时需要对每一个客户端进行分别配置,同样的升级时也是
       2. 在整个系统中,业务逻辑和用户界面都集中在了客户端,增加了安全隐患。

  b:B/S架构:browser浏览器,和server服务器  隶属于C/S架构

  技术分享图片

  优点:统一了应用接口(软件不用下载,可以在网页上进行交互)应用程序的安装、调试、维护和升级都集中在了服务器端,

  降低了维护的复杂性,提供了系统的安全性。

 2.通信过程的每种情况

a: 同一台电脑上的两个py程序通信: 打开一个py文件

b: 两个电脑如何通信:连接一根网线

c: 多个电脑通信:  

ps:
电脑1(源)要找电脑2(目标)
电脑1首先发送一个请求帧,期中包含(我的ip是192.168.1.1,我的mac地址是xxxxxxxx,我要找ip地址为192.168.1.2的主机),
将此请求发送给交换机.交换机要广播这条消息给其他所有的主机 目标主机接收到消息后,对比发现自己就是被找的主机,回复给交换机信息
(我的ip地址是192.
168.1.2,我的mac地址是yyyyyyyyy,请回复给ip地址为192.168.1.1,mac地址为xxxxxxx的主机) 交换机单播形式返回给源主机

用图来演示一下上面的语句:

技术分享图片

在计算机中的传输过程:

技术分享图片

 

mac地址:每个电脑上都有一个网卡,实际存在的,网卡是网卡制造商按照国际标准制造的一个物理地址,唯一标识,类似身份证;

(寻找mac地址的方法:进入cmd-->ipconfig -all 如果网线连接就找以太网的物理地址,如果无线就找无线的物理地址)

 

ip地址:是一个四位点分十进制,它标示了计算机在网络中的位置,所以在网络中光有mac地址不行,mac地址只能证明你的身份;

而互联网相当于一个虚拟世界,你的位置一直在改变,所以不能用mac地址找你,要不然mac地址一直改变,就不能证明身份了;

 

互联网(外网)和局域网(内网)的区别:为什么要有外网和内网,因为外网的ip不够了,就需要把外网的下面去开局域网;

 

 

交换机的通信方式:广播,单播,组播

 

arp协议:通过目标ip地址获取目标mac地址的一个协议

 

端口:问题引出:两台电脑可以相互通信了,为什么你发了一条qq不会出现在微信上,你发送的信息到底存在了计算机什么位置

   解答:但你发送信息时,先会把信息通过互联网发送给qq的服务器,再由服务器发送给另一方,

    这时操作系统为本机上每一个运行的程序都随机分配一个端口,其他电脑上的程序可以通过端口获取到这个程序;

    ip 地址 + 端口 能唯一找到某台电脑获取到这个程序;在这台电脑上接收服务器发送的你的信息;

技术分享图片

 

 

路由器:连接不同的网段,

 

网关:类似于一个局域网的出口和入口

 

网段:一个局域网内的ip地址范围:你怎样判断你和别人在同一网段内:

计算方法:有一个名词叫子网掩码:255.255.255.0(本地连接 以太网 状态 详细信息)

 

网段算法:
192.168.12.52      #主机ip地址
1100 0000 1010 1000 0000 1100 0011 0100

255.255.255.0      #子网掩码
1111 1111 1111 1111 1111 1111 0000 0000
用ip地址和子网掩码的二进制进行与运算  与预算一假必假
1100 0000 1010 1000 0000 1100 0000 0000
192.168.12.0      #网段
    

 





以上是关于清晰讲解网络编程概念性问题的主要内容,如果未能解决你的问题,请参考以下文章

脉络清晰的BP神经网络讲解,赞

你可能不知道的JavaScript代码片段和技巧(下)

你可能不知道的JavaScript代码片段和技巧(上)

SVM清晰讲解__线性可分问题

类的使用---进阶编程篇

网络编程释疑之:同步,异步,阻塞,非阻塞