网络编程
1.协议
**概念:**从应用的角度出发,协议可理解为“规则”,是数据传输和数据的解释的规则。
TCP协议注重数据的传输。http协议着重于数据的解释。
2、网络应用程序设计模式
01、C/S模式
传统的网络应用设计模式,客户机(client)/服务器(server)模式。需要在通讯两端各自部署客户机和服务器来完成数据通信。
优点:①数据缓存至客户端本地,从而提高数据传输效率。
②采用的协议灵活
缺点:①客户端和服务器端需要有一个开发团队来完成
②将客户端安插在用户主机上,对用户的安全性构成威胁
02、B/S模式
浏览器/服务器模式
优点:①由于它没有独立的客户端,使用标准浏览器作为客户端,其工作开发量较小
②不受平台限制
缺点:①由于使用第三方浏览器,因此网络应用支持受限
②没有客户端放到对方主机上,缓存数据不尽如人意
③必须与浏览器一样,采用标准http协议进行通信,协议选择不灵活。
03、TCP/IP协议
04、以太网帧格式
其中的源地址和目的地址是指网卡的硬件地址(也叫MAC地址),长度是48位,是在网卡出厂时固化的。可在shell中使用ifconfig命令查看,“HWaddr 00:15:F2:14:9E:3F”部分就是硬件地址。协议字段有三种值,分别对应IP、ARP、RARP。帧尾是CRC校验码。
05、ARP数据报格式