一、 网络通信概念
网络通信概述:从进程间通信说起网络域套接字socket,网络通信其实就是位于网络中不同主机上面的两个进程之间的通信;网络通信的层次可分为(1)硬件部分:网卡(2)操作系统底层:网卡驱动(3)操作系统API:socket接口(4)应用层:低级(直接基于socket接口编程)(5)应用层:高级(基于网络通信应用框架库)(6)应用层:更高级(http、网络控件等)。
发展历程和传输媒介:单机阶段、局域网阶段、广域网Internet阶段、移动互联网阶段、物联网阶段;无线传输有Wifi、蓝牙、Zigbee、4G/5G等,有线通信包括双绞线、同轴电缆、光线等。
OSI7层网络模型:物理层、数据链路层、网络层、传输层、表示层、会话层、应用层。
基础知识:
网卡:(1)计算机上网必备硬件设备,CPU靠网卡来连接外部网络 (2)串转并设备 (3)数据帧封包和拆包 (4)网络数据缓存和速率适配
集线器(HUB):(1)信号中继放大,相当于中继器 (2)组成局域网络,用广播方式工作。 (3)注意集线器是不能用来连接外网的
交换机: (1)包含集线器功能,但更高级 (2)交换机中有地址表,数据包查表后直达目的通信口而不是广播 (3)找不到目的口时广播并学习
路由器:(1)路由器是局域网和外部网络通信的出入口 (2)路由器将整个internet划分成一个个的局域网,却又互相联通。 (3)路由器对内管理子网(局域网),可以在路由器中设置子网的网段,设置有线端口的IP地址,设置dhcp功能等,因此局域网的IP地址是路由器决定的。 (4)路由器对外实现联网,联网方式取决于外部网络(如ADSL拨号上网、宽带帐号、局域网等)。这时候路由器又相当于是更高层级网络的其中一个节点而已。 (5)所以路由器相当于有2个网卡,一个对内做网关、一个对外做节点。(6)路由器的主要功能是为经过路由器的每个数据包寻找一条最佳路径(路由)并转发出去。其实就是局域网内电脑要发到外网的数据包,和外网回复给局域网内电脑的数据包。 (7)路由器技术是网络中最重要技术,决定了网络的稳定性和速度。
DNS(Domain Name Service 域名服务): (1)网络世界的门牌号:IP地址 (2)IP地址的缺点:难记、不直观 (3)IP地址的替代品:域名,譬如www.baidu.com (4)DNS服务器就是专门提供域名和IP地址之间的转换的服务的,因此域名要购买的 (5)我们访问一个网站的流程是:先使用IP地址(譬如谷歌的DNS服务器IP地址为8.8.8.8)访问DNS服务器(DNS服务器不能是域名,只能是直接的IP地址),查询我们要访问的域名的IP地址,然后再使用该IP地址访问我们真正要访问的网站。这个过程被浏览器封装屏蔽,其中使用的就是DNS协议。 (6)浏览器需要DNS服务,而QQ这样的客户端却不需要(因为QQ软件编程时已经知道了腾讯的服务器的IP地址,因此可以直接IP方式访问服务器)
DHCP(dynamic host configuration protocl,动态主机配置协议):
(1)每台计算机都需要一个IP地址,且局域网内各电脑IP地址不能重复,否则会地址冲突。
(2)计算机的IP地址可以静态设定,也可以动态分配
(3)动态分配是局域网内的DHCP服务器来协调的,很多设备都能提供DHCP功能,譬如路由器。
(4)动态分配的优势:方便接入和断开、有限的IP地址得到充分利用
NAT(network address translation,网络地址转换协议):
(1)IP地址分为公网IP(internet范围内唯一的IP地址)和私网IP(内网IP),局域网内的电脑使用的都是私网IP(常用的就是192.168.1.xx)
(2)网络