美文网首页
2.网络概念-scoket

2.网络概念-scoket

作者: iOS_开发 | 来源:发表于2020-01-19 19:49 被阅读0次

1 OSI七层网络模型

计算机之间的通信也要遵循不同层次的协议,来实现计算机的通信。
-应用层,表示层,会话层/传输层/网络层/数据链路层,物理层
-TCP/IP网络模型-应用层,传输层,网络层,网络接入层

传输层-TCP/UDP 屏幕快照
TCP可以保证数据的正确性,效率比UDP低,UDP校验和可以省略-UDP无法保证数据的正确性

1.1 传输协议

TCP 需要三次握手来连接数据传输服务
UDP不保证可靠,无连接的数据传输服务

2.1 Socket

http协议的底层是Socket ,Socket-套接字,纯c,通过io传输,网络通信是socket之间通信。
语句:运输层和应用层的过度
特性: 跨平台
过程:
1.创建Socket
2.连接到服务器
3.发送数据/接收数据
4.关闭连接


屏幕快照 2017-12-19 15.19.44.png

2.2socket通信过程

2.2.1.头文件声明

#import <sys/socket.h>
#import<netinet/in.h>
#import<arpa/inet.h>

2.2.2.socket函数实现
参数:domain: AF_INET AF_INET6 AF_LOCAL
type: 流失TCP-SOCK_STREAM 数据报UDP-SOCK_DGRAM
protocol: IPPROTO_TCP、IPPROTO_UDP...
return: 失败-1


屏幕快照 2017-12-19 16.02.40.png

2.2.3.connect函数实现
参数1, 套接字描述服
2,指向数据结构socketaddr的指针-端口和ip地址
3,sockeaddr通过sizeof获取
网络字节用大尾顺序-htons


屏幕快照 2017-12-19 16.03.20.png

2.2.4 mac 开模拟器
nc -lk 12345
nc -> Netcat

3 发送数据给服务器

屏幕快照 2017-12-19 16.20.59.png

4 接收服务器的数据

屏幕快照 2017-12-19 16.34.42.png

5.关闭连接

close(clientSocket);

--

相关文章

  • 2.网络概念-scoket

    1 OSI七层网络模型 计算机之间的通信也要遵循不同层次的协议,来实现计算机的通信。-应用层,表示层,会话层/传输...

  • 浅谈Socket

    1.什么是scoket scoket是基于 TCP/IP协议封装成的一个网络通讯API 在计算机通信领域,sock...

  • iOS 相关知识点(一)

    一、scoket 相关知识点(概念、三次握手四次断开、心跳包、重连以及重连次数)Scoket 是客户端和服务端之...

  • Python:网络编程

    在Python中如何实现Http请求?如何实现Scoket连接?以下直接介绍如何使用Python进行网络编程。 G...

  • 用vue+node+socket.io实现一个最简单的IM

    github地址在这里? scoket 首先介绍一下socket的基本知识:socket 原意是“插口”,在网络中...

  • 了解网络

    重点:1.了解网络中传输的都是二进制数据流. 2.了解网络编程概念. {认识网络: // 网络概念 <1> 经常见...

  • iOS之网络编程(二:Scoket)

    上一篇写了iOS之网络编程(一:基础HTTP/HTTPS与TCP/UDP),这篇就重点说说Socket。注:网上关...

  • Scoket

    https://www.jianshu.com/p/7b919910c892 简单的集成与使用 https://g...

  • Android 10. 判定Socket 是否连接网络

    Scoket判定是否连接网络不仅需要使用isClose方法进行判定,同时需要使用isConnected方法来判断S...

  • 必须知道的Android网络框架大全!值得一看良心文章!

    导语 大通常在 Android 中进行网络连接一般使用 Scoket 和 HTTP两种方式。而 HTTP 请求方式...

网友评论

      本文标题:2.网络概念-scoket

      本文链接:https://www.haomeiwen.com/subject/omsbwxtx.html