博客
关于我
协议族和数据传输方式
阅读量:723 次
发布时间:2019-03-21

本文共 1222 字,大约阅读时间需要 4 分钟。

Protocols and Protocol Families

在网络通信中,protocol 就是通信双方必须遵守的一种规范。它决定了数据在传输过程中如何确保准确无误地到达目的地。常见的协议包括 TCP、UDP 和 IP。网络上的通信必须使用相同的协议才能顺利进行,protocol 的细节决定了如何建立连接、如何相互识别等关键步骤。

protocol family(协议族)是由多个相关协议组成的一个整体。最常见的 example 是 TCP/IP 协议族,它包含了 TCP、IP、UDP 等多种互为关联的协议。特别是 TCP 和 IP 作为底层协议的重要组成部分,使得整个 TCP/IP 协议族成为网络通信的基础设施。

Data Transmission Methods

在计算机网络中,数据传输方式主要有两种:SOCK_STREAM 和 SOCK_DGRAM。

  • SOCK_STREAM:面向连接的数据传输

    这种方式保证数据能准确无误地到达另一台计算机。在数据传输过程中如果出现丢失或损坏,可以通过重新发送来解决。常见的 HTTP 协议就采用了 SOCK_STREAM transmitting data,因为它需要保证数据的完整性和正确性。

    why stream sockets can ensure high-quality数据传输呢?这是因为它使用了 TCP 协议。TCP 会确保数据按顺序正确地传输到接收方。这一点非常重要,尤其是在需要高可靠性和数据完整性的场景中。

    TCP/IP 是数据传输的核心,其由 TCP 和 IP 协议共同提供。TCP 负担了数据传输的正确性,IP 负担了数据的路由问题。

    关于“数据的发送和接收不同步”

    流格式套接字(stream socket)的工作原理中有一个关键点——收发不一定同步。内置缓冲区将接收的数据暂存起来,发送方和接收方可以按照各自的节奏来传输和读取数据Interface. 这意味着传输速率和处理方式是独立的,不同的设备可能根据自身情况决定具体操作。

  • SOCK_DGRAM:无连接的数据传输

    这种方式更注重速度,传输过程中不进行数据校验,损坏或丢失的数据无法恢复。常见的 DNA(domain name system)和 videoconference 会选择使用 SOCK_DGRAM 由于这些场景对数据完整性要求不高,且需要快速传输。

    data 报(datagram)套接字仍然使用 IP 协议作为路由层协议,但不像流格式套接字那样依赖 TCP。替代方案是使用 UDP 协议,虽然简单,但 providesFast er 数据传输速度。

    需要强调的是 sock datagram 并不像流格式套接字那么“糟糕”。),因为数据丢失或损坏的概率很小,频繁发生数据丢失的情况并不会出现,这也就是为什么人们总说 data k prone in datagram transmission。

转载地址:http://ncngz.baihongyu.com/

你可能感兴趣的文章
PHP 的标准输入与输出
查看>>
php 笔记 (早前的,很乱)
查看>>
PHP 第一天
查看>>
Redis使用量暴增,快速定位有哪些大key在作怪
查看>>
PHP 统计数据功能 有感
查看>>
SpringBoot处理JSON数据
查看>>
PHP 输入输出流合集
查看>>
php-cgi(fpm-cgi) 进程 CPU 100% 与 file_get_content...
查看>>
php-兔子问题,斐波那契数列
查看>>
php-约瑟夫问题
查看>>
php.ini中常见的配置信息选项
查看>>
php.ini配置中有10处设置不当,会使网站存在安全问题
查看>>
PHP7 新特性
查看>>
PHP7+MySQL5.7+Nginx1.9. on Ubuntu 14.0
查看>>
php7.1.6 + redis
查看>>
php7中使用php_memcache扩展
查看>>
PHP7中十个需要避免的坑
查看>>
php7和PHP5对比的新特性和性能优化
查看>>
PHP7安装pdo_mysql扩展
查看>>
PHP7实战开发简单CMS内容管理系统(7) 后台登录架构 用户登录校验
查看>>