码迷,mamicode.com
首页 > 编程语言 > 详细

Java网络编程-01-TCP协议,UDP协议,Socket

时间:2021-02-18 13:45:42      阅读:0      评论:0      收藏:0      [点我收藏+]

标签:定位   比较   术语   cli   socket   tag   包含   java网络编程   一个   

 

  说起网络编程,在程序员的脑海中,一定首先浮现的是两个传输层的协议,那就是TCP和UDP协议无疑了。两者相比较,TCP又要比UDP的应用更加广泛,那是因为TCP是可靠的协议。所谓可靠,一个是说它会在client端和server端之间建立“连接”,另一个是说,在传输过程中如果出现丢包的现象,TCP会重发,然后保证数据传输最终是准确无误的。这样,在很多场景下,由于需要数据的准确传输,TCP就是比较好的选择。常见的一些应用层协议,底层用的就是TCP协议,如HTTP协议,FTP协议和TELNET协议等等。

  另一个与TCP协议和UDP协议相关的术语,就是Socket,中文翻译是套接字。其实Socket这个单词的英文原意是墙上的插座。我想这里应该是一个隐喻,Socket地址通常包含两个信息,IP地址和端口。IP可以用来定位网络上的一个主机,而端口就可以定位这个主机上具体的进程(当一个进程绑定了一个端口的时候,这个端口不可以再被其他进程所绑定)。所以当网络上位于不同主机的两个进程进行通信的时候,就像墙上的两个插座一样,需要一条线来连接这两个插座,类似的,TCP协议和UDP协议就像这样虚拟的线,可以帮助连接网络上的两个进程进行信息的传输。

  在Java中,有两个类,Socket和ServerSocket。这两个类可以帮助建立TCP连接;同样的,还有DatagramSocket类,DatagramPacket类来帮助发送UDP的数据包。接下来的随笔中,将会介绍如何使用Java的这些类,来构建一些小程序,展示如何进行TCP通信和UDP通信。

 

Java网络编程-01-TCP协议,UDP协议,Socket

标签:定位   比较   术语   cli   socket   tag   包含   java网络编程   一个   

原文地址:https://www.cnblogs.com/ywchang/p/14399586.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!