Socket引子

Posted staff

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Socket引子相关的知识,希望对你有一定的参考价值。

===

‘‘‘
Socket网络编程:
--应用层:http  smtp  dns  ftp  ssh  snmp  dhcp...
    无论协议是什么本质上都是数据交换,总结为两种方式:收和发
--传输层(端口Port) TCP  (UDP)
--网络层(包IP地址) IP
--数据链路层(报文mac地址)
TCP三次握手四次断开 握手:syn syn+ack ack
so....
把传输层TCP/UDP以下的收和发,封装为Socket
客户端--服务器   客户端:我是192.168.1.2:8377,我找22.34.6.122:80(balabalabala)
                服务器:收到来自192.168.1.2:8377的消息(balabalabala),并返回消息(hehehehhe)
地址簇:(网络层 IP)
socket.AF_UNIX  本机进程间通信,在127.0.0.1转一圈
socket.AF_INET IPV4
socket.AF_INET IPV6
Socket 类型:(传输层TCP)
socket.SOCK_STREAM    # TCP协议
socket.SOCK_DGRAM    # UDP协议
socket.SOCK_RAW     # 原始套接字,改网络层的东西,可以修改IP地址头,
                # 洪水攻击(三次握手的时候,客户端不发最后一次ack造成服务器A线程挂起1分钟,
                在伪造IP再发,B线程再挂起1分钟...不停伪造,服务器会拒绝响应)
socket.SOCK_ROM # 可靠的UDP形式,保证交付数据但不保证顺序。发过去ABC 可能接收到CAB
‘‘‘

 

以上是关于Socket引子的主要内容,如果未能解决你的问题,请参考以下文章

golang代码片段(摘抄)

socket.io实践(一.实现简单的图表推送)

Socket

网络(socket)编程

网络编程

网络编程之套接字socket