1.网络编程的架构解读
1) 网络的架构分为:c/s架构和b/s架构。
2) c/s架构:由客户端和服务端组成;b/s架构:由浏览器和服务器组成。
3) 在本质上,b/s架构就是c/s架构的体现!
4) 服务端:24小时提供服务,谁来我就服务谁;客户端:什么时候想体验服务,就去找服务算体验服务。
5)网络进行传输的首要条件就是:物理连接层
6) 在屋里连接层存在的基础上,两台计算机需要达成类似于人类语言的共识,那就是协议。
2.网络编程的核心OSI协议(主要五个核心)
OSI协议主要由七层协议组成,分别是:应用层、表示层、会话层、传输层、网络层、数据链路层和物理连接层。
1)物理连接层:计算机和计算机之间的物理硬件连接,传输数据通常使用二进制进行传输;原因是:电信号存在就是以高低电平实现的。具体提现就是使用(0:低电平,1:高电平)
2)数据链路层:(以太网协议)规定每个计算机上都要有一个网卡,并且规定了二进制的分组形式。
以太网协议:每个网卡上都要有位移标识的MAC地址;通常是48为二进制,前8为标识出厂,后8为标识流水号。生产的网卡上的号码就是对应的Mac地址。
通过以太网传输的形式:基本靠吼!!!!因此带来的弊端就是:广播风暴
解决方式:通过交换机。用来替代计算机本身被连接着很多的电脑的弊端,使得其他的计算机通过连接交换机就可以了。
3)网络层:IP地址通过点分十进制,通常IP分为:ipv4和ipv6(为了兼容更多的计算机,越来越普及。)
IP的范围是:[0.0.0.0 , 255.255.255.255]
可以跨局域网进行传输;用来标识唯一连接互联网的独一无二的计算机。
4)传输层:端口号(port),计算机和计算机之间应用程序与通信的基带,用来标识唯一连接互联网的应用程序。
端口号的范围是:[0,65535],一般分配的用户应用程序都在8000之后。(遵循的是动态分配的原则)
一台计算机同时间同一个端口号只能被一个应用程序占用,言外之意不存在多个端口被多个占用。
5)应用层:(http协议,Ftp协议)
3.那么IP和port之间什么关系呢?
IP:是用来标识全世界唯一接入互联网的独一无二的计算机。
Port:是用来标识某台计算机接入互联网的独一无二的应用程序。
IP+Port:就是用来标识独一无二的计算机上的某个唯一的应用程序。
4.arg协议:就是通过IP来解析MAC地址的协议。
5.TCP协议:流式协议,可靠的协议
主要即:三次握手,四次挥手的体现。
三次握手:
四次挥手:
6.某些情况下带来的弊端:
原文:https://www.cnblogs.com/wanglei957/p/10791374.html