socket概述:

在很多编程语言中,都使用socket套接字实现网络通信。

socket是对TCP/IP协议的封装,socket本身是一个调用接口(API),方便程序员用socket使用TCP/IP协议簇,实现网络通信。

不同编程语言,使用socket通信的语法有所区别,但基本过程类似。

TCP与UDP协议:

TCP和UDP都隶属于TCP/IP协议簇。

TCP是面向连接的协议,也就是说,在收发数据前,必须和对方建立可靠的连接。

UDP是一个非连接的协议,在数据传输之前源端和终端不建立连接,当它想传送时就简单地去传输和抓取数据。效率高,速度快,可靠性低。

TCP:

建立客户端和服务器端,先运行服务器端的程序,然后再运行客户端。

客户端:

#客户端:发送消息给服务端
from socket import *#创建socket对象
#AF_UNIX本机通信 AF_INET(IPV4) AF_INET6(IPV6)
#SOCK_STREAM(TCP)  SOCK_DGRAM(UDP)
s=socket(AF_INET,SOCK_STREAM)#和目标建立连接
s.connect(("localhost",0303))#发送消息
s.send("你好!服务端!".encode())  #.encode()对字符串进行编码#关闭socket
s.close()

服务器端:

#服务端:接收客户端消息并显示
from socket import *#创建socket对象
s=socket(AF_INET,SOCK_STREAM)#绑定监听端口
s.bind(("localhost",0303))#监听
s.listen()#等待消息
conn,adr=s.accept()#接收信息
msg=conn.recv(1024)print("--------:",msg.decode())s.close()

UDP:

服务器端(不需要提前先运行):

#服务端:接收客户端消息并显示
from socket import *
import time#创建socket对象
s=socket(AF_INET,SOCK_DGRAM)#绑定端口
s.bind(("localhost",3435))#接收信息
while 1==1:msg=s.recv(1024)print("----:",msg.decode())s.close()

客户端:

#客户端:发送消息给服务端
from socket import *#创建socket对象
#AF_UNIX本机通信 AF_INET(IPV4) AF_INET6(IPV6)
#SOCK_STREAM(TCP)  SOCK_DGRAM(UDP)
s=socket(AF_INET,SOCK_DGRAM)#发送信息
while 1==1:msg=input("---------<<:")s.sendto(msg.encode(),("localhost",3435))#关闭socket
s.close()

TCP与UDP通信方式的实现相关推荐

  1. 40 张图带你搞懂 TCP 和 UDP

    前言 拿下计网协议后,我就是公园里最靓的仔 TCP/IP 基础知识总结 计算机网络基础知识总结 那么下面就开始我们本篇文章,文章组织脉络如下 运输层位于应用层和网络层之间,是 OSI 分层体系中的第四 ...

  2. TCP和UDP的区别(转)

    TCP协议与UDP协议的区别     首先咱们弄清楚,TCP协议和UCP协议与TCP/IP协议的联系,很多人犯糊涂了,一直都是说TCP/IP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信 ...

  3. 网络编程 socket模块 tcp协议 udp协议

    网络基础相关知识 , socket模块 , tcp协议通信代码 , tcp和udp编码流程 网络基础相关知识(1) 架构 C / S 架构: client 客户端 和 server 服务器端 优势:能 ...

  4. OSI七层网络模型TCP&UDP

    文章目录 1.OSI网络七层模型 1.1.OSI七层协议 1.2.OSI各层详解 2.TCP 2.1.TCP简介 2.2.TCP的主要特点 2.3.TCP的主要功能 2.4.TCP三次握手&四 ...

  5. 详解 TCP 和 UDP

    本篇文章转载自公众号:网络技术平台 https://mp.weixin.qq.com/s/8iyxF1tT3JhyHKdyeF1uAg 目录 一.概述 二.初始传输层 2.1 TCP 2.2 UDP ...

  6. [python学习] 专题七.网络编程之套接字Socket、TCP和UDP通信实例

    很早以前研究过C#和C++的网络通信,参考我的文章:                  C#网络编程之Tcp实现客户端和服务器聊天                 C#网络编程之套接字编程基础知识   ...

  7. 计算机网络:TCP和UDP的对比

    1. 什么是TCP? TCP(Transmission Control Protocol,传输控制协议)是面向连接的.可靠的字节流服务,也就是说,在收发数据前,必须和对方建立可靠的连接.这一过程和打电 ...

  8. 【转】TCP和UDP的区别

    TCP协议与UDP协议的区别 首先咱们弄清楚,TCP协议和UDP协议与TCP/IP协议的联系,很多人犯糊涂了, 一直都是说TCP协议与UDP协议的区别,我觉得这是没有从本质上弄清楚网络通信! TCP/ ...

  9. TCP/IP的初步理解,TCP和UDP的区别

    1.什么是TCP/IP协议 TCP/IP协议是一个协议簇.里面包括很多协议的.UDP只是其中的一个.之所以命名为TCP/IP协议,因为TCP,IP协议是两个很重要的协议,就用他俩命名了. TCP/IP ...

最新文章

  1. C语言中连续调用rand函数,返回值不变
  2. 快节奏的多人游戏同步 - 示例代码和在线演示
  3. 背景属性的相关属性设置
  4. 【Android 逆向】ART 脱壳 ( InMemoryDexClassLoader 脱壳 | dex_file.cc 中创建 DexFile 实例对象的相关函数分析 )
  5. chrome浏览器下用几行js代码实现写入剪贴板功能
  6. python 字符串和时间格式(datetime)相互转换-
  7. ERP与SCM之区别
  8. android中的通信机制总结
  9. 小程序如何生成海报分享朋友圈
  10. App隐私合规辅助检测工具
  11. word数学公式快捷键-高效率办公技能get
  12. 【PHP编程】WebCat,手机搭建PHP运行环境及项目运行
  13. 西游记中文殊菩萨的坐骑青狮两次下界为妖
  14. 明港镇计算机培训班,平桥区建筑工匠培训班在明港新集村开班
  15. 食品加工企业自营商城小程序开发,帮助企业增加销售渠道,提高销量
  16. snipeit 安装、备份文件恢复
  17. Spark Core (TopN、mysql写入、读取文件通过RDD结合数据库中的表)练习3套
  18. HashMap? ConcurrentHashMap? 相信看完这篇没人能难住你!
  19. k3s证书过期的处理 以及 修改k3s证书有效期为10年(或自定义时间)
  20. java初学求一个数的绝对值

热门文章

  1. 早安我的少年怎么用电脑玩 早安我的少年模拟器玩法教程
  2. DDD领域驱动设计为什么那么玄学,因为你从来都没看过原书
  3. JavaScript(一)——什么是JavaScript
  4. Android TV与机顶盒
  5. WiFi 基础(二)—— BSS、ESS、BSSID、ESSID、SSID
  6. 激光测距项目整体框图及原理
  7. 多协议直播发布工具和接收工具
  8. 计算机专业要不要读研?
  9. 常用PHP编辑器下载
  10. 彩票模拟程序 [福利彩票-双色球] [体育彩票 - 大乐透]