网络基础---IP地址,PORT端口,TCP/IP五层模型,网络字节序

交换机:实现主机之间的数据交换;
路由器:实现数据交换和路由选择,相当于就是一个网关的作用;
网络的划分
局域网:网络覆盖范围在一千米以内
城域网:网络覆盖范围在10-20千米
广域网:网络覆盖范围在20千米以外

IP地址

用来标识唯一的主机,分为IPV4和IPV6两个版本,IPV4位uint32_t类型的,IPV6是uint8_t arr[16],但是IPV6并不向前兼容IPV4,因此还是IPV4目前被较为广泛的使用。在网络中每条信息都会包含源IP和目的IP

PORT端口

被用来在主机中标识唯一的进程,uint16_t,无符号两个字节的整数,当主机上的一个程序运行起来之后,会告诉操作系统自己的IP地址和端口,这个时候操作系统如果从网卡上接收到数据后,就会根据目的地址信息,选择将数据交给正确的进程处理,并且网络中每条信息也会包含源端口和目的端口
一个进程可以使用多个端口,但是一个端口只能被一个进程使用

TCP/IP五层模型:

1.应用层:负责应用程序之间的数据沟通;典型协议:HTTP、FTP、DNS;描述数据的组织解析以及一些数据的描述信息
2.传输层:负责应用程序之间的数据传输;典型协议:TCP、UDP;描述端口信息标识从哪个进程到哪个进程
3.网络层:负责地质管理与路由选择;典型协议:IP;路由器;描述IP信息,标识从哪个主机到哪个主机
4.链路层:负责相邻设备之间的数据帧识别与传输;典型协议:以太网协议;交换机;描述MAC地址,标识从哪个设备到哪个设备
5.物理层:负责物理光电信号的传输;典型协议:以太网协议;集线器;

数据的传输流程:发送端主机的层层数据封装:tcp/ip五层模型的层层对原始数据的描述->接收端主机的层层数据分用:tcp/ip五层模型的层层对网络数据进行解析得到原始数据的过程

网络字节序:

字节序:cpu在内存中对数据进行存取的顺序
网络字节序:在网络传输的过程中,数据的存储顺序
大端字节序:低地址存高位;小端字节序:低地址存低位
网络字节序是大端还是小端取决于什么?取决于cpu架构,x86架构–小端,mips–大端架构
如何解决在网络通信中由于字节序不同造成的数据二异的问题?—在网络通信中使用相同的网络字节序标准
如何判断大端小端?union tmp{int a;uchar b;} tmp.a = 1;if(tmp.b == 1){小端}else{大端};

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
Delphi是一种流行的编程语言,它提供了许多处理TCP/IP通信的功能和组件。在Delphi中,可以使用其内置的Socket组件库来实现TCP/IP通信。 要在Delphi中进行TCP/IP通信,首先需要创建一个Server Socket(服务器套接字)和一个Client Socket(客户端套接字)。可以通过在Delphi的窗体上拖放相关的组件来创建这些套接字。 对于服务器端,可以使用TServerSocket组件。通过设置TServerSocket的一些属性,例如Port端口)和Address(地址),可以指定服务器监听的端口IP地址。然后,在TServerSocket的OnClientConnect事件中,可以编写服务器接受客户端连接后的处理逻辑。可以使用TServerSocket的ClientSocket属性获取对应的客户端套接字。 对于客户端,可以使用TClientSocket组件。通过设置TClientSocket的一些属性,例如Host(主机)和Port端口),可以指定要连接的服务器的IP地址端口。然后,在TClientSocket的OnConnect事件中,可以编写客户端连接成功后的处理逻辑。可以使用TClientSocket的Socket属性获取连接的套接字对象。 一旦建立连接,可以使用套接字对象的Read和Write方法来进行数据的读取和写入。可以使用字节数组来传输各种类型的数据。 总的来说,在Delphi中实现TCP/IP通信,需要创建服务器套接字和客户端套接字对象,并编写相应的事件处理程序来处理连接和数据的发送和接收。通过使用Delphi的Socket组件库,可以轻松实现TCP/IP通信功能。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值