当前位置: 首页 > news >正文

东莞网站的制作无锡信息网站建设

东莞网站的制作,无锡信息网站建设,贵州网架公司,网站建设公司专业公司🍅 Java学习路线配套文章:搬砖工逆袭Java架构师 🍅 基础推荐:Java基础教程系列 🍅 实战推荐:Spring Boot基础教程 🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ …

🍅 Java学习路线配套文章:搬砖工逆袭Java架构师

🍅 基础推荐:Java基础教程系列

🍅 实战推荐:Spring Boot基础教程

🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ 、Java架构师奋斗者💪

🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步 

🍅 欢迎点赞 👍 收藏 ⭐留言 📝  

目录

一、socket通信

二、socket典型应用

三、基于TCP协议的面向连接的套接字(Internet Socket)

四、基于UDP协议的无连接的套接字(Datagram Sockets)

五、C# 实现socket服务端与客户端通信

六、效果展示


一、socket通信

socket翻译成中文就是“套接字”的意思,所谓的socket编程就是指用计算机语言通过编程来实现计算机之间的通信问题。socket通信技术就是两台联网或者多态联网的计算机之间的数据交互技术。

二、socket典型应用

socket最典型的应用就是web服务器和浏览器。

1、浏览器获取用户输入的URL(全球资源定位符),向web服务器发送请求;

2、web服务器接收到URL并进行分析,将对应的网络内容以及资源返回给浏览器;

3、浏览器接收到web服务器返回的网页内容以及资源,将其进行解析和渲染,将最终的效果展示给用户。

三、基于TCP协议的面向连接的套接字(Internet Socket)

1、TCP:The Transmission Control Protocol 传输控制协议。

2、我们经常讲的套接字也就是Internet Scoket,根据数据传输方式,可以将Internet Scoket分为几种,在使用socket()创建网络连接时,必须告诉它是哪一种数据传输方式,简单来说就是数据传输的控制协议。

计算机领域称之为:流格式套接字(Stream Sockets),在计算机代码中使用SOCK_STREAM表示。

3、SOCK_STREAM有以下特点:

  • 可靠的、双向的通信数据流;
  • 数据传输是按照顺序进行的;
  • 数据在传输中是准确无误的,是自带重发机制的;
  • 数据的发送和接收是不同步的,存在缓冲区;
  • 流格式套接字的典型应用就是HTTP协议,因为浏览器在加载进行解析时必须要数据完整正确。

四、基于UDP协议的无连接的套接字(Datagram Sockets)

1、UDP:User Datagram Protocol 用户数据报协议。

2、基于UDP协议的无连接的套接字,计算机领域称之为:数据报格式套接字(Datagram Sockets),计算机代码中使用SOCK_DGRAM表示。

SOCK_DGRAM是一种高效率、高速度、不可靠的通信数据流。其是基于UDP协议的,不用进行数据校验,只进行数据传输。

3、SOCK_DGRAM有以下特点:

  • 每次传输数据大小有限制;
  • 追求高效率、高速度;
  • 传输的数据可能丢失或者损坏(小概率事件);
  • 数据的发送和接收是同步的,也就是存在数据边界;

数据报格式的典型应用就是QQ视频和语音,因为这两者的需求是高效率和低延时,同时小概率的丢失数据不会影响整个数据的传输质量。

五、C# 实现socket服务端与客户端通信

  • 模拟客户端向服务端发送数据
  • 服务端:
private void socketServer()
{Log("大家好,我是socket服务端!");//1,创建socket             using System.Net.Sockets;//AddressFamily.InterNetwork内网,SocketType.Stream以流来通信,第三个为协议Socket tcpSever = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//2,绑定服务器IP(计算机唯一标识)和端口号。端口号将通信数据给指定的软件。一个软件占用一个特定端口号(0-60000)//查看本机IP:cmd-》ipconfig  本机局域网IP:198.168.1.2 //IPAddress ipAddress = new IPAddress(new byte[] { 192,168,1,2});EndPoint point = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8888);//IPEndPoint是对IP+端口号的一层封装tcpSever.Bind(point);//向操作系统申请一个可用的IP和端口号做通信。绑定当前IP和端口号//3.监听。等待客户端连接tcpSever.Listen(100);//参数是最大连接数Socket clientSocket = tcpSever.Accept();//暂停当前线程,直到一个客户端连接过来,之后进行下面的代码。返回的socket为客户端socket//使用返回的socket跟客户端做通信string message = "welcome!";Log(message);byte[] meg = Encoding.UTF8.GetBytes(message);//对字符串编码,得带一个字节数组clientSocket.Send(meg);//接受客户端数据byte[] buffer = new byte[1024];int length = clientSocket.Receive(buffer);//接受客户端数据string mes = Encoding.UTF8.GetString(buffer, 0, length);Log(mes);tcpSever.Close();
}
  • 客户端
private void socketClient(string msg)
{Log("大家伙,我是CSDN素小暖,创建socket客户端");//创建socketSocket tcpClient = new Socket(AddressFamily.InterNetwork, SocketType.Stream, ProtocolType.Tcp);//发起连接请求EndPoint remoteIp = new IPEndPoint(IPAddress.Parse("127.0.0.1"), 8888);tcpClient.Connect(remoteIp);//连接远程已经绑定IP和端口号的服务器端。已连接远程主机。//从远程主机接受数据并显示在客户端byte[] buffer = new byte[1024];int byteNum = tcpClient.Receive(buffer);//将接受到的数据,存入buffer。返回值为接受到的字节数string message = Encoding.UTF8.GetString(buffer, 0, byteNum);//将接受到的数据,转化为字符串Console.WriteLine(message);//发送给服务器string clientToSeverMes = msg;byte[] cts = Encoding.UTF8.GetBytes(clientToSeverMes);tcpClient.SendTo(cts, remoteIp);
}

六、效果展示

🍅 Java学习路线配套文章:搬砖工逆袭Java架构师

🍅 基础推荐:Java基础教程系列

🍅 实战推荐:Spring Boot基础教程

🍅 简介:Java领域优质创作者🏆、CSDN哪吒公众号作者✌ 、Java架构师奋斗者💪

🍅 扫描主页左侧二维码,加入群聊,一起学习、一起进步 

🍅 欢迎点赞 👍 收藏 ⭐留言 📝  

 添加微信,备注1024,赠送Java学习路线思维导图

http://www.yayakq.cn/news/762594/

相关文章:

  • 做网站多少钱PageAdmin网站推广营销公司
  • 随州市网站建设手机免费app开发制作平台
  • 自己做配图的网站企业网站栏目设计
  • 马鞍山集团网站设计西安网站seo
  • 运营商做网站wordpress文章无法使用
  • 广州祥云平台网站建设网站制作过程简介
  • 网页设计与网站建设案例教程msn wordpress
  • 手机微网站模板下载手机网站主机
  • wordpress高级破解主题什么是优化产业结构
  • 平台和自建网站服务提供者查看网站被恶意镜像
  • 怎么查看服务器上的网站生活分类信息网站大全
  • 服装网站设计策划同城分类网站建设
  • 网站排名优化培训哪家好快速网站
  • 以网站建设为开题报告自己接私单网站开发
  • 网站的广告语应该怎么做vs做网站怎样添加图片
  • 吉安公司做网站网站建设资金投入分析
  • 网站设计的提案做自己的程序设计在线测评网站
  • 高校网站模板龙岩网上办事大厅官网
  • 利津网站建设网站开发需要多久
  • 万网建网站做网站先建立模型
  • 辛集seo网站优化电话做外贸如何分析客户网站
  • 北京模板建站用dw做的网页怎么连到网站上
  • 贵州安顺网站建设软件如何制作
  • 网站更改备案主体同城配送网站建设
  • 服务佳的网站建设龙岩做网站公司哪家好
  • 织梦网站后台密码wordpress上传权限设置
  • c2c网站建设需求分析做任务网站有哪些
  • 宝安品牌网站制作网站常用的优化方法有哪些
  • 太原站扩建asp.net网站开发实战
  • 个人免费网站制作网投计划