网络编程(一)
一.软件开发架构
1.c/s架构(client/server)
c:客户端
s:服务器
2.b/s架构(browser/server)
b:浏览器
s:服务器
ps:b/s架构的本质也是c/s架构
二.OSI协议
计算机与计算机之间实现远程通信需要有一套公共的标准/协议协议
1.OSI协议
OSI七层协议
应用层
表示层
会话层
传输层
网络层
数据链路层
物理连接层
OSI五层协议
应用层
传输层
网络层
数据链路层
物理连接层
2.物理连接层
基于电信号传输010101001010这种类似的二进制数据
3.数据链路层
1.规定的电信号的分组方式
2.规定了任何一台接入互联网的计算机都必须有一块网卡
每一块网卡上面都刻有世界上独一无二的编号 12位16进制数 前6位是厂商编号 后6位是流水线编号
这12位数叫做mac地址
ps:以上两点合称为"以太网协议"
交换机 基于以太网协议通信 不能跨局域网通信
4.网络层
IP协议
规定了只要是接入互联网的计算机都必须有一个IP地址
ip地址特点: 点分十进制
ip地址最小:0.0.0.0
ip地址最大:255.255.255.255
ip地址目前有两个版本:IPV4 IPV6
ip地址是动态分配的
5.传输层
TCP\UDP都是基于端口工作的协议
端口(port):用来唯一标识一台计算机上的某个应用程序
端口号的范围:0~65535
建议使用8000之后的端口
总结
ip地址:用来唯一标识接入互联网的一台计算机
port端口:用来唯一标识一台计算机上的某个应用程序
ip+port:唯一表示接入互联网一台计算机上的某个应用程序
6.应用层
HTTP协议
FTP协议
三.TCP协议(流式协议,可靠协议)
基于TCP协议通信 首先必须要建立双向通道
三次握手四次挥手: