博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
网络编程 socket
阅读量:5253 次
发布时间:2019-06-14

本文共 694 字,大约阅读时间需要 2 分钟。

sever端

import socket 

sk=socket.socket()  实例化一个对象

sk.bind(('ip地址',端口号))

sk.listen(数字)    python3.4以上不用加数字

conn,addr=sk.accept()      阻塞

conn.send(bytes类型的内容)

msg=conn.recv(数字)

conn.close()

sk.close()

 

client端

import socket

sk=socket.socket()

sk.connect((‘服务端的ip’,服务端的端口))

sk.recv()

sk.send()

sk.close()

 

OSI五层协议

应用层  http、https 协议  

传输层  TCP、UDP协议 四层路由器,四层交换机

网络层  IP协议  路由器,三层交换机

数据链路层 Arp协议  网桥,网卡,以太网交换机

物理层  中继器,集线器,双绞线

 

粘包现象:

合包现象:数据很短,时间间隔短

拆包现象:大(文件)数据会发生拆分,不会一次性全部发送到对方,对方在接受的时候很有可能没办法一次性接收到所有信息

那么没有接收完的信息很有可能和后面的信息黏在了一起

粘包现象只发生在TCP 协议中,tcp协议的传输是流式传输,每条信息与信息之间是没有边界的

udp协议是不会发生粘包现象的,适合短数据的发送,不建议发送过长的数据,否则会增大数据丢失的几率

粘包现象的本质是:收发数据的边界不清晰,接收数据这一端不知道要接收数据的长度是多少

 

转载于:https://www.cnblogs.com/a3002/p/9641762.html

你可能感兴趣的文章
ASP.NET使网页弹出窗口不再困难
查看>>
Leetcode Balanced Binary Tree
查看>>
Leetcode 92. Reverse Linked List II
查看>>
windown快速安装xgboost
查看>>
Linux上安装Libssh2
查看>>
九.python面向对象(双下方法内置方法)
查看>>
go:channel(未完)
查看>>
[JS]递归对象或数组
查看>>
LeetCode(17) - Letter Combinations of a Phone Number
查看>>
Linux查找命令对比(find、locate、whereis、which、type、grep)
查看>>
路由器外接硬盘做nas可行吗?
查看>>
python:从迭代器,到生成器,再到协程的示例代码
查看>>
Java多线程系列——原子类的实现(CAS算法)
查看>>
在Ubuntu下配置Apache多域名服务器
查看>>
多线程《三》进程与线程的区别
查看>>
linux sed命令
查看>>
html标签的嵌套规则
查看>>
[Source] Machine Learning Gathering/Surveys
查看>>
HTML <select> 标签
查看>>
类加载机制
查看>>