C++中socket如何实现跨平台-创新互联

这篇文章给大家分享的是有关C++中socket如何实现跨平台的内容。小编觉得挺实用的,因此分享给大家做个参考,一起跟随小编过来看看吧。

创新互联主营贵港网站建设的网络公司,主营网站建设方案,成都app开发,贵港h5小程序开发搭建,贵港网站营销推广欢迎贵港等地区企业咨询

           网络编程

Socket是跨平台的在Window和Linux基本通用,无论是,java php都是需要网络的,网络编程是每个程序员都需要掌握的,他并不复杂。复杂的地方是对整个协议的理解,还有网络通信的理解。

这个博客是对整个网络编程中最,学习的目的:

{能够熟悉windows和linux下的开发流程,能够开发出支持跨平台的多线程的网络程序。理解socket编程原理,理解udp和tcp的协议,并能通过抓包工具分析协议,通过本课程的学习能够开发出支持高并发的网络服务端,通过开发支持php的http服务器和syslog服务器能够将网络编程投入实战应用。掌握c++11的线程库和正则表达式库。}.

使用语音是:C/C++,因为他高性能,对高并发的处理很好.

最终可以带大家实战一个支持PHP脚本的http服务器。

需要注意的是Socket库不等同于TCP/UDP编程,因为他还可以开发其他

的一些协议。

交流群:140066160

进入正题:(先讲理论,在实战)

               1TCPIP协议分层讲解

学习网络编程,他说基于什么协议之上的。不是会用几个函数就可以了,那么TCP/IP是基于什么协议呢?

我们对网络编程不能停留在仅仅会用Socket把两个程序调通了,互相发送协议。你要明白整个协议的过程,为了实践当中解决

问题,碰到网络问题你知道是什么原因。

C++中socket如何实现跨平台

看TCP/TP四层协议,我看到我们程序人员其实只要用到

这四层,OSI模型中。

1.网络介质层

物理层和数据链路层对应的是“网络介质层”,

每一层都是为了解决一个问题,他是解决一个硬件设备和另一个硬件设备在物理上怎么进行通信。通信得知道地址,所以“网络介质层”会最终封装出一个“MAC”地址,就是硬件的地址,来进行通信.

2 IP层

这一层,上面已经实现了一个设备到另一个设备物理上的连接,但是,我们需要的是真正接收的这个数据呢, 这个时候就需要确定是由谁来接收。那我们通过IP层给每个设备封装一个IP地址。

然后由交换机来进行分配,在这层程序成员需要做的是:IP地址建立连接,目前IP地址都是基于IPV4是4个字节的IP地址。这个网络层只需要知道IP对IP地址


    协议的目的是什么?协议是怎么实现的?

C++中socket如何实现跨平台

非常简单,原理也非常简单,我们就是在用户发送的数据加一层头,最后接收端在通过解包一层一层去掉。

为了深刻理解上面的图,我们下载一个抓包软件来看看,Wireshark,可以百度直接就可以下载,抓HTTP的协议看看

C++中socket如何实现跨平台

C++中socket如何实现跨平台

  随便抓到一个整包(Get的)

C++中socket如何实现跨平台

先看下分析的内容

1  frame 最底层的帧数据,也就是说把TCP分层他会把数据


切包,切成一帧一帧的,

C++中socket如何实现跨平台

2 Ethernet II 他对应的是链路层的MAC的地址,目标,源地址

C++中socket如何实现跨平台

3 Internet Protocol,这个就是上面讲的IP层,这里有目标ID

来源IP等信息,

C++中socket如何实现跨平台

4 Transmission 传输层,端口号,原端口号,目标端口,

C++中socket如何实现跨平台

5 Hypertext Transfer Protocol应用层,图片中是

Http协议会发送一个Get请求过去

C++中socket如何实现跨平台

需要搞跨平台,需要用到Linux 。ubuntu 16.04 .先到这

感谢各位的阅读!关于“C++中socket如何实现跨平台”这篇文章就分享到这里了,希望以上内容可以对大家有一定的帮助,让大家可以学到更多知识,如果觉得文章不错,可以把它分享出去让更多的人看到吧!

另外有需要云服务器可以了解下创新互联scvps.cn,海内外云服务器15元起步,三天无理由+7*72小时售后在线,公司持有idc许可证,提供“云服务器、裸金属服务器、高防服务器、香港服务器、美国服务器、虚拟主机、免备案服务器”等云主机租用服务以及企业上云的综合解决方案,具有“安全稳定、简单易用、服务可用性高、性价比高”等特点与优势,专为企业上云打造定制,能够满足用户丰富、多元化的应用场景需求。

文章标题:C++中socket如何实现跨平台-创新互联
标题URL:https://www.cdcxhl.com/article38/cddspp.html

成都网站建设公司_创新互联,为您提供微信小程序企业网站制作网站改版网站制作定制开发微信公众号

广告

声明:本网站发布的内容(图片、视频和文字)以用户投稿、用户转载内容为主,如果涉及侵权请尽快告知,我们将会在第一时间删除。文章观点不代表本网站立场,如需处理请联系客服。电话:028-86922220;邮箱:631063699@qq.com。内容未经允许不得转载,或转载时需注明来源: 创新互联

网站建设网站维护公司