1. 首页
  2. 网络

tcp网络编程

TCP网络编程从socket到消息包,发送接收都是bit,传输中两端怎么知道哪些bit组成一个协议?“我是哟哟吼说科技,专注于数据网络的回答,欢迎大家与我交流数据网络的问题”socket又称

TCP网络编程从socket到消息包,发送接收都是bit,传输中两端怎么知道哪些bit组成一个协议?

“我是哟哟吼说科技,专注于数据网络的回答,欢迎大家与我交流数据网络的问题”

socket又称为套接字,用以TCP建立连接并进行通信时来表示的IP地址加端口号的结构作为连接的端点。

如题,传输中的两端如何知道哪些bit组成的同一个协议?

哟哟认为有两种方法可以实现,一是通过告知对端每条信息的长度,二是采用特定的分隔符将数据进行分割。

下面哟哟简单介绍一下两种方式的实现:

1、固定信息的长度

当数据被分片后,发送端在每次发送数据信息时会在首部里添加一个字段,用以表示后面内容的长度是多少,在接收端再根据长度进行组合即可;

2、特定的分隔符

通过在数据发送完毕后加入特定的分隔符,表示该数据信息已发送完毕。接收端会通过分隔符来确认数据是否发送完毕,但需要注意的是每条消息中不能包含此分隔符;

欢迎大家多多关注我,在下方评论区说出自己的见解。

想自学网络编程,需要学习哪些知识?

谢谢邀请,

网络编程在编程体系里面占据很大一部分,在离不开网络的时代,网络编程重要性越来越强,网络编程算是程序员要掌握的基本功了,很多人好奇的黑客,网络也是基本功。无论什么编程语言都需要支持网络编程,只不过在接口实现方式上,会根据自身编程语言的特性,对于socket进行封装。

网络编程经典书籍:

协议:TCP/IP卷一

UNIX网络编程

网络编程底层代码基本上C语言来实现的,建议在linux下用c语言,把底层原汁原味的linux socket编程走一遍,下图是一个socket原理图


socket常见接口

现在无论java,python网络接口都接近上面的接口。

如何学?

1.先把网络编程的基本概念了解明白,知道大概协议,读懂网络传输的原理(把推荐的两本书)

2.选择一门自己擅长的编程语言,然后在上面练习网路编程(选择编程环境)

3.亲自手动写一个网络编程实例,例如实现简单的局域网数据传输功能,模拟简单的qq聊天功能(功能实践)

希望能够帮到你

谁有Java网络编程的视频?

你去看看java基础大全

本文来自投稿,不代表本站立场,如若转载,请注明出处。