您尚未登录,请登录后浏览更多内容! 登录 | 立即注册
 找回密码
 立即注册
查看: 108|回复: 10

#关于TCP Socket#

[复制链接]

1

主题

1

好友

26

积分

Qter1级会员

Rank: 1

Qter豆
40
发表于 2016-12-21 09:15:31 |显示全部楼层
1Qter豆
求教各位大神有接触过铱星SBD数据传输的服务器推送模式的吗?目前想开发一个运行于服务器端的应用程序,监听某个端口。 还有我阅读铱星官方的开发文档给出的说明使用的通信协议是TCP/IP Socket,因为自己对网络通信这块不是特别了解,想问一下这种协议跟TCP/IP协议有什么区别?如果有用QT开发过相关的应用的大神指点一下就太好了~

目前自己从网上找了找C++写 TCP服务器端的一些例子,因为分不清TCP/IP Socket和 TCP协议的关系,所以现在很蒙

求明白人点拨点拨
附件: 您需要 登录 才可以下载或查看,没有帐号?立即注册

最佳答案

godmaycry 查看完整内容

TCP/IP Socket就是遵循TCP/IP协议的socket网络编程,不明白什么是socket可以百度。 接触过铱星SBD数据传输的服务器推送模式,不过所有遵循TCP/IP协议的模式,传输方式都是相同的,不同在业务协议上。
回复

使用道具 举报

7

主题

1

好友

84

积分

Qter1级会员

Rank: 1

Qter豆
176
发表于 2016-12-21 09:15:32 |显示全部楼层
TCP/IP Socket就是遵循TCP/IP协议的socket网络编程,不明白什么是socket可以百度。
接触过铱星SBD数据传输的服务器推送模式,不过所有遵循TCP/IP协议的模式,传输方式都是相同的,不同在业务协议上。
回复

使用道具 举报

1

主题

1

好友

26

积分

Qter1级会员

Rank: 1

Qter豆
40
发表于 2016-12-21 09:49:47 |显示全部楼层
godmaycry 发表于 2016-12-21 09:24
TCP/IP Socket就是遵循TCP/IP协议的socket网络编程,不明白什么是socket可以百度。
接触过铱星SBD数据传输 ...

就是铱星服务器是使用基于socket的TCP协议传输,然后我本地服务器端也使用socket实现TCP协议是吧?那么我本地端在监听的时候就因该使用ServerSocket去监听,我先在只想试试这个链路能不能走通,那么请问socket连接成功的话后续铱星那边就直接把数据推送过来了是吧
回复

使用道具 举报

7

主题

1

好友

84

积分

Qter1级会员

Rank: 1

Qter豆
176
发表于 2016-12-21 09:55:18 |显示全部楼层
baowenhit 发表于 2016-12-21 09:49
就是铱星服务器是使用基于socket的TCP协议传输,然后我本地服务器端也使用socket实现TCP协议是吧?那么 ...

先确定你本地是客户端client连铱星服务器,还是作为一个服务端server,让铱星来连。
client需要知道server的ip地址和端口,才能连过去。
server需要监听本地一端口,告知client连过来。
回复

使用道具 举报

1

主题

1

好友

26

积分

Qter1级会员

Rank: 1

Qter豆
40
发表于 2016-12-21 09:59:24 |显示全部楼层
godmaycry 发表于 2016-12-21 09:55
先确定你本地是客户端client连铱星服务器,还是作为一个服务端server,让铱星来连。
client需要知道serve ...

铱星给出的文档里面说的是在我本地接收数据的时候是作为一个server来监听端口等待连接,如果是向铱星那边发数据那么就作为一个client向铱星的IP和端口发起连接请求。能请教一下您之前做的这块是发送还是接收呢?
回复

使用道具 举报

7

主题

1

好友

84

积分

Qter1级会员

Rank: 1

Qter豆
176
发表于 2016-12-21 10:13:07 |显示全部楼层
baowenhit 发表于 2016-12-21 09:59
铱星给出的文档里面说的是在我本地接收数据的时候是作为一个server来监听端口等待连接,如果是向铱星那边 ...

你对网络编程这块接触的还是少,服务端server和客户端client是相对的,而不是绝对的。
TCP服务端的意思是假设你有一个“超级电话”,这个“超级电话”可以同时接收N个人同时向你拨打,你可以同时接通所有向你呼叫的电话,然后向每个人回话。在这里超级电话就是服务端,每个人就是客户端。
网络编程里面,客户端连上服务端后,服务端为了区分不同的客户端,会把每个客户端标记为一个值——socket值。服务端可以通过不同的socket值向不同的客户端回话。
如果铱星也是一个服务端,那么你可以在你的模块里面加上客户端模块,然后作为一个客户端去连铱星。
回复

使用道具 举报

1

主题

1

好友

26

积分

Qter1级会员

Rank: 1

Qter豆
40
发表于 2016-12-21 11:09:55 |显示全部楼层
godmaycry 发表于 2016-12-21 10:13
你对网络编程这块接触的还是少,服务端server和客户端client是相对的,而不是绝对的。
TCP服务端的意思是 ...

接触的的确是比较少
这是铱星的开发文档的原话
(1)我本地接收数据的时候是等待铱星来连我的,那么我就是个server,只要监听事先绑定好的端口就可以了,铱星那边会自动向我绑定好的IP和端口推送数据,但是现在连接还没建立起来
(2)我要往外发数据,那么我就要去连铱星的IP和端口,这时候我就作为一个client。
不知道您之前开发的时候这块是怎么处理的?
回复

使用道具 举报

7

主题

1

好友

84

积分

Qter1级会员

Rank: 1

Qter豆
176
发表于 2016-12-21 11:38:01 |显示全部楼层
baowenhit 发表于 2016-12-21 11:09
接触的的确是比较少
这是铱星的开发文档的原话
(1)我本地接收数据的时候是等待铱星来连我的,那么我 ...

你还是没明白我的意思,如果你作为服务端,铱星作为客户端连你,就不需要知道铱星的IP和端口了,他连上后,你可以自动获取到他的socket,随意向他发消息。
网络编程这块,说简单也简单,说复杂很复杂。任何技术都不是一蹴而成的,可以看一下网络编程的资料和书籍,你会有收获的。
回复

使用道具 举报

1

主题

1

好友

26

积分

Qter1级会员

Rank: 1

Qter豆
40
发表于 2016-12-21 12:10:22 |显示全部楼层
godmaycry 发表于 2016-12-21 11:38
你还是没明白我的意思,如果你作为服务端,铱星作为客户端连你,就不需要知道铱星的IP和端口了,他连上后 ...

您说的这个我知道呢~太细节的可能我感觉也不需要知道太深入啦,总是要慢慢学的~因为着急用所以请教一下您之前开发铱星服务器传输这块的经验
回复

使用道具 举报

7

主题

1

好友

84

积分

Qter1级会员

Rank: 1

Qter豆
176
发表于 2016-12-21 12:38:40 |显示全部楼层
baowenhit 发表于 2016-12-21 12:10
您说的这个我知道呢~太细节的可能我感觉也不需要知道太深入啦,总是要慢慢学的~因为着急用所以请教一下您 ...

我没开发过铱星服务器
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

       
    Archiver|冀ICP备10016221号-2

GMT+8, 2017-1-19 10:20 , Processed in 0.091574 second(s), 25 queries .

© 2001-2011 Powered by Discuz! X2.5. Theme By Yeei!

回顶部