TCP/IP三次握手   第一次 A向B 发送 syn 请求    然后B给A返回 syn + ack  A收到后,给B返回ack 握手成功。Socket 网络编程实现通信 要通过IP+PortSocket是对所有上层协议的封装,它只关注 发送数据 和 接收数据Socket使用方法:--发送端 伪代码import socket# 声明协议socket.TCP/IP# 建立连接
    connect(a.ip,a.port)# 发送请求
    socket.sent(hello)socket.recv()socket.close()-----------------------接收端 伪代码import socket# 声明协议socket.TCP/IP# 监听端口 (监听IP,监听端口)listen(0.0.0.0,9990)# 等待链接
    waiting()# 接收数据
    recv()send()Socket Families (地址簇)socket.AF_UNIX 本机进程间通信socket.AF_INET IPV4socket.AF_INET6 IPV6Socket Typessocket.SOCK_STREAM # for tcpsocket.SOCK_DGRAM # for udpsocket.SOCK_raw # 原始套接字,普通的套接字无法处理ICMP、IGMP等网络报文,而它可以。其次SOCK_RAW也可以处理特殊的socket.SOCK_RDM # 是一种可靠的UDP形式,即保证交付数据报但不保证顺序。

客户端代码:

#!/usr/bin/env pythonimport  socket# 申明协议类型
client = socket.socket() #申明socket类型,同事生成socket连接对象# 设置请求端口
client.connect(("localhost",6969))while True:msg = input(">>:").strip()#发送数据#client.send(b"Hello World")client.send(msg.encode("utf-8"))data = client.recv(1024)print("recv:",data.decode())client.close()

服务端代码:

#!/usr/bin/env pythonimport  socket# 声明协议
server = socket.socket()server.bind(("localhost",6969)) # 绑定要监听的端口

server.listen() # 监听print("等待通信中。。。")
# 等待通信
# conn就是客户端连过来,而在服务器端为其生成的一个连接实例
conn,addr = server.accept() # 它会返回两个值 一个是连接对象,另一个是链接地址
print("conn,addr",conn,addr)
print("消息来啦...")
while True:# 接受信息data = conn.recv(1024)print("recv:",data.decode())conn.send(data)server.close()

转载于:https://www.cnblogs.com/pengpengzhang/p/9528202.html

pythonのSocket相关推荐

  1. [Python_7] Python Socket 编程

    0. 说明 Python Socket 编程 1. TCP 协议 [TCP Server] 通过 netstat -ano 查看端口是否开启 # -*-coding:utf-8-*-"&qu ...

  2. Python Socket请求网站获取数据

     Python Socket请求网站获取数据 ---阻塞 I/O     ->收快递,快递如果不到,就干不了其他的活 ---非阻塞I/0 ->收快递,不断的去问,有没有送到,有没有送到,. ...

  3. python udp 直播_[Python] socket发送UDP广播实现聊天室功能

    原博文 2018-11-24 12:33 − 一.说明 本文主要使用socket.socket发送UDP广播来实现聊天室功能. 重点难点:理解UDP通讯流程.多线程.UDP广播收发等. 测试环境:Wi ...

  4. 【Python之旅】第五篇(三):Python Socket多线程并发

    1.多线程模块 主要是socketserver模块,如下图示: 2.多线程原理 如下图示说明: 3.SockteServer例子说明 服务器端: 客户端: 4.演示 还是以前面例子,对代码进行修改,作 ...

  5. python socket 说明

    一个简单的python socket编程 一.套接字 套接字是为特定网络协议(例如TCP/IP,ICMP/IP,UDP/IP等)套件对上的网络应用程序提供者提供当前可移植标准的对象.它们允许程序接受并 ...

  6. Python Socket 编程——聊天室示例程序

    上一篇 我们学习了简单的 Python TCP Socket 编程,通过分别写服务端和客户端的代码了解基本的 Python Socket 编程模型.本文再通过一个例子来加强一下对 Socket 编程的 ...

  7. python socket sendto sendall_网络通信 Python Socket UDP Select

    前言 工作中遇到各种各样的网络通信.有MQTT和CoAP这样的物联网应用层协议,也有各种自定义的TCP或UDP协议.使用各种不同的计算机语言和框架开发网络通信,例如Java的Netty框架,C语言原始 ...

  8. python socket编程_Python Socket编程实现网络编程

    对于有经验的开发人员来说,掌握的编程语言应该是不少的.在这些编程语言中,网络编程的应用时必不可少的.其中Python也是这样的编程语言.我们今天将会在这里为大家详细介绍一下Python Socket编 ...

  9. 【转】 python socket向百度发送http长连接请求 并做搜索

    http://hi.baidu.com/leejun_2005/blog/item/30fe9bd23a396c28960a1640.html [转] python socket向百度发送http长连 ...

  10. php socket 握手,python Socket之客户端和服务端握手详细介绍

    这篇文章主要为大家详细介绍了python Socket之客户端和服务端握手,具有一定的参考价值,感兴趣的小伙伴们可以参考一下 简单的学习下利用socket来建立客户端和服务端之间的连接并且发送数据 1 ...

最新文章

  1. html不能超出div的宽度,DIV设置width后超出父元素应该如何解决
  2. 【技巧】解决win10的1803版本下,无法收到1809推送、从而无法更新到1903版本的问题。...
  3. 直播 | AMP:针对模型参数施加对抗扰动的高效神经网络正则化算法
  4. 中国程序员的前景并非一片黑暗,教你如何拥有光明的前程
  5. php fopen html,PHP fopen和fwrite函数实现创建html页面_PHP教程
  6. 1、eclipse 使用git提交项目至github进行项目托管
  7. 基于卷积神经网络与迁移学习的油茶病害图像识别
  8. select 的操作
  9. Android设计模式--之命令模式
  10. 转-挂载raw和qcow2格式的KVM硬盘镜像
  11. 自制操作系统:引导扇区的实现
  12. sqlite的数据库文件在什么地方? sqlite数据库文件后缀名,提取方法,打开方法。
  13. 发布LumaQQ.NET 2008
  14. 一梦江湖获取服务器信息卡住,一梦江湖手游2021年8月6日更新公告
  15. VMware windows xp虚拟机设置静态ip
  16. Android 出海 Admob 踩坑
  17. matlab生成gif动图
  18. rpg服务器无限刷金币bug,荆棘谷惊现无限刷金BUG 无脑跑商盆满钵满
  19. h5+css3简单实现网页端五子棋游戏1.0版
  20. 补丁31305087

热门文章

  1. java中的dispose()方法
  2. API接口调用里的QPS指什么?百度语音API里的QPS实例说明
  3. Python 技术篇-PyQt5动画功能演示,组件移动、尺寸改变动画演示
  4. Java的一维数组和二维数组的关系
  5. SDUT_2075 最少拦截系统
  6. Python中函数的参数传递方式
  7. 快速生成一个二维矩阵Python
  8. opencv将整个图片BGR通道的某个通道进行修改
  9. 电力系统单机无穷大_电力系统分析(九):电力系统的稳定性分析
  10. 4-剑指offer: 把数组排成最小的数