1,架构
架构---程序员开发的一种模式
C/S 架构 客户端服务器模式
B/S 架构 Browser浏览器/服务器模式(解决了C/S架构出现的冗余现象)
B/S 架构 的优势: 统一了应用的接口
2,网络通信编程:
同一台电脑上两个py文件通信 --- 文件
两台电脑 如何通信? --- 一根网线
多台电脑 如何通信? --- 交换机
更多台电脑 如何通信? --- 交换机+路由器
同一台电脑上两个py文件通信 --- 文件
两台电脑 如何通信? --- 一根网线
多台电脑 如何通信? --- 交换机
更多台电脑 如何通信? --- 交换机+路由器
3,mac地址:
网卡上面有一个mac地址,这个地址是物理地址,一般是由网卡生产商给的,不能随便给,要遵循规则,原因是因为mac地址要求全球统一
在cmd中查看自己的mac地址, ipconfig -all
每层运行常见物理设备
mac地址是12位十六进制组成
4,什么是ip地址: ipv4 4位点分十进制
IP地址是指互联网协议地址(英语:Internet Protocol Address,又译为网际协议地址),是IP Address的缩写。IP地址是IP协议提供的一种统一的地址格式,它为互联网上的每一个网络和每一台主机分配一个逻辑地址,以此来屏蔽物理地址的差异。 IP地址是一个32位的二进制数,通常被分割为4个“8位二进制数”(也就是4个字节)。IP地址通常用“点分十进制”表示成(a.b.c.d)的形式,其中,a,b,c,d都是0~255之间的十进制整数。例:点分十进IP地址(100.4.5.6),实际上是32位二进制数(01100100.00000100.00000101.00000110)
5,端口:
设备与外界通讯交流的出口
操作系统为每一个应用程序奉陪一个端口号,ip+ 端口号,唯一确定某一个电脑上的某一个程序
6,arp协议:
通过目标ip地址,获取目标mac地址
7,给你一个ip地址,如何确定它是不是在你当前局域网内?
用网段来确定:
ip & 子网掩码
例如:
ip地址 192.168.1.12
1100 0000 . 1010 1000 . 0000 0001 . 0000 1100
1111 1111 . 1111 1111 . 1111 1111 . 0000 0000
结果 1100 0000 . 1010 1000 . 0000 0001 . 0000 0000
---> 192.168.1.0 网段
子网掩码 255.255.255.0
1100 0000 . 1010 1000 . 0000 0001 . 0000 1100
1111 1111 . 1111 1111 . 1111 1111 . 0000 0000
结果 1100 0000 . 1010 1000 . 0000 0001 . 0000 0000
---> 192.168.1.0 网段
子网掩码 255.255.255.0
8,路由器:
有一个路由表,记录了归他管理的所有网段
9,协议 :
由多人指定的一种规则
10,通过socket模块去操作tcp和udp协议
TCP协议 : 安全可靠通信方式,面向连接
UDP协议 : 不安全,不可靠的通信方式,快,
TCP协议 : 安全可靠通信方式,面向连接
UDP协议 : 不安全,不可靠的通信方式,快,
服务器:
import socket sk = socket.socket(type=socket.SOCK_STREAM) sk.bind(('127.0.0.1',9090)) sk.listen() conn,addr = sk.accept() msg = conn.recv(1024) print(msg.decode('utf-8')) conn.close() sk.close()
客户端:
import socket sk = socket.socket() sk.connect(('127.0.0.1',9090)) sk.send('你好'.encode('utf-8')) sk.close()
ip地址:127.0.0.1 : 回环地址:无论什么时候,都可以代表本机的ip地址(只限在本机使用)
11,tcp协议
三次握手 : 注意必须是client先发起请求
1 client发送给server我想连接你,可以么
2 server回复client,可以,我也想连接你,可以吗?
3 client回复server,可以
四次挥手 : 谁先发起请求都可以
1 client发送请求:我准备断开连接了,我没有数据需要发送了,
如果你有数据可以继续发给我
2 server回复:确认接收到你的请求,我开始着手准备断开事宜
3 server回复:我准备好了,可以随时断开连接
4 client回复:断开连接吧
12, OSI五层模型:
应用层 py文件
传输层 tcp/udp协议
网络层 ip协议
数据链路层 arp协议,网卡
物理层 网线,集线器,光纤
互联网协议与osi模型
互联网协议按照功能不同分为osi七层或tcp/ip五层或tcp/ip四层
每层运行常见的协议