专栏首页cwl_Java经典面试题-请简单阐述一下Socket通讯原理,以及Socket基于TCP和UDP协议实现的优缺点

经典面试题-请简单阐述一下Socket通讯原理,以及Socket基于TCP和UDP协议实现的优缺点

版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

本文链接:https://blog.csdn.net/weixin_42528266/article/details/103079013

Socket通信的原理大致分为以下几个步骤。
  • 服务器端的步骤如下。
    • (1)建立服务器端的Socket,开始侦听整个网络中的连接请求。
    • (2)当检测到来自客户端的连接请求时,向客户端发送收到连接请求的信息,建立与客户端之间的连接。
    • (3)当完成通信后,服务器关闭与客户端的Socket连接。
  • 客户端的步骤如下。
    • (1)建立客户端的Socket,确定要连接的服务器的主机名和端口。
    • (2)发送连接请求到服务器,并等待服务器的回馈信息。
    • (3)连接成功后,与服务器进行数据的交互。
    • (4)数据处理完毕后,关闭自身的Socket连接。
  • TCP:面向连接、传输可靠(保证数据正确性,保证数据顺序)、用于传输大量数据(流模式)、速度慢,建立连接需要开销较多(时间,系统资源)。
  • UDP:面向非连接、传输不可靠、用于传输少量数据(数据包模式)、速度快。

本文参与腾讯云自媒体分享计划,欢迎正在阅读的你也加入,一起分享。

我来说两句

0 条评论
登录 后参与评论

相关文章

  • 经典面试题-数据连接池的工作机制是什么

    J2EE 服务器启动时会建立一定数量的池连接,并一直维持不少于此数目的池连接。客户端程序需要连接时,池驱动程序会返回一个未使用的池连接并将其表记为忙。如果当前没...

    cwl_java
  • 速读原著-TCP/IP(FTP协议)

    F T P与我们已描述的另一种应用不同,它采用两个 T C P连接来传输一个文件。

    cwl_java
  • 快速学习-注册github帐号

    说明:可以创建仓库的网站很多(Github/GitLab/码云等),这里主要讲解Github

    cwl_java
  • Socket 通信原理

    什么是Socket? Socket的中文翻译过来就是“套接字”。套接字是什么,我们先来看看它的英文含义:插座。 Socket就像一个电话插座,负责连通两端的电话...

    wangxl
  • Nginx设置Keep-Alive为close

    nginx不能在响应头部添加Keep-Alive,详见:http://wiki.nginx.org/HttpCoreModule#keepalive_timeo...

    meteoric
  • Android:这是一份很详细的Socket使用攻略

    端口号规定为16位,即允许一个IP主机有2的16次方65535个不同的端口。其中:

    Carson.Ho
  • Socket(套接字)在服务器端和客户端之间的基本工作原理

    版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。

    村雨遥
  • nginx优化之keepalive

    1、TCP_NODELAY 你怎么可以强制 socket 在它的缓冲区里发送数据? 一个解决方案是 TCP 堆栈的 TCP_NODELAY选项。这样就可以使缓冲...

    sunsky
  • django自定义非主键自增字段类型详解(auto increment field)

    当save()后并不能刷新instance,及save后numbering会为空值,需要重写get一次.

    砸漏
  • WPF 自定义 TextBoxView 的 Margin 大小

    在 WPF 的 TextBox 里有 TextBoxView 用来渲染 TextBox 内容,但是在 TextBox 里面的 TextBoxView 是不能直接...

    林德熙

扫码关注云+社区

领取腾讯云代金券