# http
# smtp
# dns
# ftp:下载上传文件
# ssh
# snmp
# dhcp
# icmp ping :网络层 (其他都是在传输层之上 都是应用层 )
# 数据的交换: 收/发两个步骤
# OSI七层模型:
# 物理层
# 数据链路 mac(十六进制) 计算机只认识mac地址
# 网络 IP 双方互相识别
# TCP/IP:三次握手四次断开
# A-> syn ->B 发起建立连接的请求 确保B存在
# A<- syn+ack <-B syn响应+ack应答
# A-> ack ->B ack应答 确保A存在
# UDP 流媒体
# 地址簇 socket.AF_UNIX socket.AF_INET:ipv4 socket.AF_INET6:ipv6
# 传输 各种协议->协议的收发进行封装->socket socket types socket.SOCK_STREAM socket.SOCK_DGRAM socket.SOCK_RAW:可以伪造IP,洪水攻击 socket.SOCK_RDM:udp
# 会话
# 表示
# 应用
'''
# socket中做什么?发数据 收数据
发数据
IP地址:连接请求的机器
访问程序(port):端口 一个机器上最多能开放的端口是65535(port) nginx:80 mysql:3306
收数据
连接机器的IP和端口:(数据的返回目标)
##发送端##
import socket
# 选择协议
socket.TCP/IP
# 链接对方
connect (a.ip,a.port)
# 发送数据
socket.send("hello")
socket.recv()
socket.close()
##接收端##
# 要先有服务端
import socket
# 选择协议
socket.TCP/IP
# 监听端口
listen(0.0.0.0,6969)
# 接收数据
waiting()
recv()
# 发送数据
send()
'''
TCP原理
最新推荐文章于 2017-07-12 18:56:55 发布