网络通信概述
进程间通信
网络域套接字socket,网络通信就是位于网络中不同主机上面的两个进程之间的通信
网络通信的层次:
硬件部分:网卡
操作系统底层:网卡驱动
操作系统API:socket接口
应用层:低级(直接基于socket接口编程)
应用层:高级(基于网络通信应用框架库)
应用层:更高级(http、网络控件等)
物联网阶段
网络通信基础知识
网络通信的发展历程
单机阶段
局域网阶段
广域网internet阶段
移动互联网阶段
三大网络
电信网、电视网络、互联网
网路通信的传输媒介
无线传输:WIFI、蓝牙、zigbee、4G/5G/GPRS等
有线通信:双绞线、同轴电缆、光纤等
OSI 7层网络模型(开发系统互连参考模型)
网卡
计算机上网必备硬件设备,CPU靠网卡来连接外部网络
串转并设备(CPU与网卡是并行,数据在网线上传输室串行)
数据帧封包和拆包
网络数据缓存和速率适配
集线器(HUB)
信号中继放大,相当于中继器
组成局域网络,用广播方式工作
注意集线器是不能用来
交换机
包含集线器功能,但是更加高级
交换机有地址表,数据包查表后直达目的通信口而不是广播
找不到目的口时广播并学习
路由器
1、局域网和外部网络通信的出入口
2、路由器将整个internet划分成一个个局域网,却又互相联通
3、路由器对内管理子网(局域网),可以在路由器中设置子网的网段,设置有端口的IP地址,设置dhcp功能等,因此局域网的IP地址是由路由器决定的
4、路由器对外实现联网,联网方式取决于外部网络(如ADSL拨号上网、宽带账号、局域网等)。此时路由器相当于更高层级网络的一个节点
5、路由器相当于有两个网卡,一个对内做网关,一个对外做节点
6、路由器主要功能:为每个数据包寻找一条最佳路径(路由)并转发出去。
7、路由器技术是网络中最重要的技术,决定了网络的稳定性和速度。
DNS
1、网络世界的门牌号:IP地址
2、IP地址的替代品:域名
3、DNS服务器就是专门提供域名和IP地址之间转换的,(域名需要购买)
4、我们访问一个网站的流程:IP地址访问DNS服务器(DNS服务器不能是域名,只能是IP地址),查询访问的域名的IP地址,然后使用该IP地址访问我们真正需要访问的网站。
5、浏览器需要DNS服务,而QQ这样的客户端不需要(QQ软件编写的时候已经知道腾讯的服务器IP地址,因此可以直接以IP地址访问服务器)
DHCP(动态主机配置协议)
每台计算机都需要一个IP地址,局域网内各个电脑IP地址不能重复
计算机的IP地址静态设定,也可以动态分配
动态分配时局域网内的DHCP服务器来协调的,很多设备都能提供DHCP功能,譬如路由器
NAT(网络地址转换协议)
1、IP地址分为公网IP(internet范围内唯一的)和私网IP(内网),局域网内使用的都是私网IP(常用的都是192.168.1.xx)
2、网络同学的数据包中包含目的地址和IP地址
3、当局域网中的主机要发送数据包给外网时,路由器要负责将数据包中的局域网主机的内网IP替换成当前局域网的对外外网IP。这个过程叫做NAT
4、NAT的作用是缓解IPv4的IP地址不够用问题
5、NAT穿透
IP地址分类
IP地址实际是一个32为二进制数,
IP地址中32为包含两个部分,网络地址和主机地址。子网掩码,用来说明网络地址和主机地址各自多少位。
由网络地址和主机地址分别占多少位的不同,将IP地址分为5类,常用的有三类
三类IP地址
A类
B类
C类
127.0.0.0 用来回环测试loopback
如何判断两个IP地址是否在同意子网里
网络标识 = IP地址 & 子网掩码
2个IP地址的网络标识一样,那么就在同一网络