目录
26 关系: AT&T,原始套接字,字节序,应用程序接口,传输控制协议,伯克利大学,BSD,C语言,網路插座,用户数据报协议,电气电子工程师学会,DCCP,行程間通訊,计算机网络,Hello World!,IP,IPv4,IPv6,Linux,UNIX,Unix域套接字,Winsock,流控制传输协议,文件描述符,操作系统,手册页。
- BSD
- 網路插座
AT&T
AT&T公司是美國最大的固網電話服務供應商及第一大的流動電話服務供應商,此外還提供寬頻及收費電視服務。合共1.5億戶提供服務,當中8,510萬戶為無線用戶。 西南貝爾公司創辦於1983年是根據的,而成立的其中一間。1995年西南貝爾公司易名為SBC通訊公司,再於2005年收購了美國電話電報公司並易名為AT&T公司,此外並繼承了原由美國電話電報公司所持有的商標及在紐約證券交易所的上市編碼T(電話之意)。 目前AT&T公司通過購買持有不少因1983年判決而剝離的。 公司總部位於美國德州的達拉斯市中心Godinez, Victor and David McLemore.
原始套接字
在计算机网络中, 原始套接字(raw socket)是一种网络套接字,允许直接发送/接收IP协议数据包而不需要任何传输层协议格式。.
字节序
字节顺序,又称端序或尾序(Endianness)。在计算机科学领域中,是跨越多字节的程序对象的存储规则。.
应用程序接口
应用程序接口(Application Programming Interface,简称:API),又称为应用编程接口,就是软件系统不同组成部分衔接的约定。由於近年來软件的规模日益庞大,常常需要把复杂的系统划分成小的组成部分,编程接口的设计十分重要。程序设计的实践中,编程接口的设计首先要使软件系统的职责得到合理划分。良好的接口设计可以降低系统各部分的相互依赖,提高组成单元的内聚性,降低组成单元间的耦合程度,从而提高系统的维护性和扩展性。.
传输控制协议
传输控制协议(Transmission Control Protocol,縮寫為TCP)是一种面向连接的、可靠的、基于字节流的传输层通信协议,由IETF的RFC 793定义。在简化的计算机网络OSI模型中,它完成第四层传输层所指定的功能,用户数据包协议(UDP)是同一层内另一个重要的传输协议。 在因特网协议族(Internet protocol suite)中,TCP层是位于IP层之上,应用层之下的中间层。不同主机的应用层之间经常需要可靠的、像管道一样的连接,但是IP层不提供这样的流机制,而是提供不可靠的包交换。 应用层向TCP层发送用于网间传输的、用8位字节表示的数据流,然后TCP把数据流分割成适当长度的报文段(通常受该计算机连接的网络的数据链路层的最大传输单元(MTU)的限制)。之后TCP把结果包传给IP层,由它来通过网络将包传送给接收端实体的TCP层。TCP为了保证不发生丢包,就给每个包一个序号,同时序号也保证了传送到接收端实体的包的按序接收。然后接收端实体对已成功收到的包发回一个相应的确认(ACK);如果发送端实体在合理的往返时延(RTT)内未收到确认,那么对应的数据包就被假设为已丢失将会被进行重传。TCP用一个校验和函数来检验数据是否有错误;在发送和接收时都要计算校验和。.
伯克利大学
#重定向 加利福尼亞大學柏克萊分校.
BSD
伯克利軟件套件(Berkeley Software Distribution,縮寫為BSD),也被稱為伯克利Unix(),是一個操作系統的名稱。衍生自Unix(類Unix),1970年代由伯克利加州大學的學生比爾·喬伊(Bill Joy)開創,也被用來代表其衍生出的各種套件。 BSD常被當作工作站級別的Unix系統,這得歸功於BSD用戶許可證非常地寬鬆,許多1980年代成立的計算機公司,不少都從BSD中獲益,比較著名的例子如DEC的Ultrix,以及Sun公司的SunOS。 1990年代,BSD很大程度上被System V 4.x版以及OSF/1系統所取代,但其開源版本被採用,促進了因特網的開發。.
C语言
C是一种通用的程式語言,广泛用于系统软件与应用软件的开发。于1969年至1973年間,為了移植與開發UNIX作業系統,由丹尼斯·里奇與肯·汤普逊,以B语言为基础,在贝尔实验室設計、开发出來。 C语言具有高效、灵活、功能丰富、表达力强和較高的可移植性等特点,在程式設計中备受青睐,成为最近25年使用最为广泛的编程语言。目前,C语言編譯器普遍存在於各種不同的操作系统中,例如Microsoft Windows、macOS、Linux、Unix等。C語言的設計影響了众多後來的程式語言,例如C++、Objective-C、Java、C#等。 二十世纪八十年代,為了避免各開發廠商用的C語言語法產生差異,由美國國家標準局為C語言訂定了一套完整的國際標準語法,稱為ANSI C,作為C語言的標準。二十世纪八十年代至今的有关程式開發工具,一般都支持符合ANSI C的語法。.
網路插座
在計算機科學中,網路插座(Network socket),又譯網絡套接字、網絡接口、網路插槽,是電腦網路中行程間資料串流的端點。使用以網際協議(Internet Protocol)為通訊基礎的網路插座,稱為網際插座(Internet socket)。因為網際協議的流行,現代絕大多數的網路插座,都是屬於網際插座。 socket是一种操作系统提供的进程间通信机制。 在作業系統中,通常會為應用程式提供一組應用程式介面(API),稱為插座介面(socket API)。應用程式可以通過插座介面,來使用網路插座,以進行資料交換。最早的插座介面來自於4.2 BSD,因此現代常見的插座介面大多源自Berkeley套接字(Berkeley sockets)標準。在插座介面中,以IP地址及通訊埠組成插座位址(socket address)。遠端的插座位址,以及本地的插座位址完成連線後,再加上使用的协议(protocol),这个五元组(five-element tuple),作为插座對(socket pairs),之後就可以彼此交換資料。例如,在同一台计算机上,TCP协议与UDP协议可以同时使用相同的port而互不干扰。 作業系統根據插座地址,可以決定應該將資料送達特定的行程或執行緒。這就像是電話系統中,以電話號碼加上分機號碼,來決定通話對象一般。.
用户数据报协议
户数据报协议(User Datagram Protocol,縮寫為UDP),又稱使用者資料包協定,是一个简单的面向数据报的传输层协议,正式規範為RFC 768。 在TCP/IP模型中,UDP为网络层以上和应用层以下提供了一个简单的接口。UDP只提供数据的不可靠传递,它一旦把应用程序发给网络层的数据发送出去,就不保留数据备份(所以UDP有时候也被认为是不可靠的数据报协议)。UDP在IP数据报的头部仅仅加入了复用和数据校验(字段)。 UDP首部字段由4个部分组成,其中两个是可选的。各16bit的來源端口和目的端口用来标记发送和接受的应用进程。因为UDP不需要应答,所以來源端口是可选的,如果來源端口不用,那么置为零。在目的端口后面是长度固定的以字节为单位的长度域,用来指定UDP数据报包括数据部分的长度,长度最小值为8byte。首部剩下地16bit是用来对首部和数据部分一起做校驗和(Checksum)的,这部分是可选的,但在实际应用中一般都使用这一功能。 由于缺乏可靠性且屬於非連接導向協定,UDP应用一般必须允许一定量的丢包、出错和复制貼上。但有些应用,比如TFTP,如果需要则必须在应用层增加根本的可靠机制。但是绝大多数UDP应用都不需要可靠机制,甚至可能因为引入可靠机制而降低性能。流媒體(串流技術)、即时多媒体游戏和IP电话(VoIP)一定就是典型的UDP应用。如果某个应用需要很高的可靠性,那么可以用传输控制协议(TCP协议)来代替UDP。 由于缺乏拥塞控制(congestion control),需要基于网络的机制来减少因失控和高速UDP流量负荷而导致的拥塞崩溃效应。换句话说,因为UDP发送者不能够检测拥塞,所以像使用包队列和丢弃技术的路由器这样的网络基本设备往往就成为降低UDP过大通信量的有效工具。数据报拥塞控制协议(DCCP)设计成通过在诸如流媒体类型的高速率UDP流中,增加主机拥塞控制,来减小这个潜在的问题。 典型网络上的众多使用UDP协议的关键应用一定程度上是相似的。这些应用包括域名系统(DNS)、简单网络管理协议(SNMP)、动态主机配置协议(DHCP)、路由信息协议(RIP)和某些影音串流服務等等。.
电气电子工程师学会
電機電子工程師學會(Institute of Electrical and Electronics Engineers,簡稱為IEEE,英文读作“i triple e”)是一个建立於1963年1月1日的国际性电子技术与电子工程师协会,亦是世界上最大的专业技术组织之一,擁有來自175個國家的36萬會員。 除設立於美國紐約市的總部以外,亦在全球150多個國家擁有分會,並且還有35個專業學會及2個聯合會。其每年均會發表多種雜誌、學報、書籍,亦舉辦至少300次的專業會議。 目前IEEE在工業界所定義的標準有著極大的影響。.
DCCP
#重定向 数据拥塞控制协议.
行程間通訊
进程间通信(IPC,Inter-Process Communication),指至少两个进程或线程间传送数据或信号的一些技术或方法。 进程是计算机系统分配资源的最小单位(严格说来是线程)。每个进程都有自己的一部分独立的系统资源,彼此是隔离的。为了能使不同的进程互相访问资源并进行协调工作,才有了进程间通信。通常,使用进程间通信的两个应用可以被分为客户端和服务器(见主从式架构),客户端进程请求数据,服务端响应客户端的数据请求。有一些应用本身既是服务器又是客户端,这在分布式计算中,时常可以见到。这些进程可以运行在同一计算机上或网络连接的不同计算机上。 IPC对微内核和纳米内核的设计过程非常重要。 微内核减少了内核提供的功能数量。 然后通过IPC与服务器通信获得这些功能,与普通的单片内核相比,IPC的数量大幅增加。.
计算机网络
计算机网络(computer network),通常也简称網路,是利用通信设备和线路将地理位置不同的、功能独立的多个计算机系统连接起来,以功能完善的网络软件实现网络的硬件、軟件及资源共享和信息传递的系统。简单的说即连接两台或多台计算机进行通信的系统。.
Hello World!
#重定向 Hello World.
IP
IP可以指:.
IPv4
网际协议版本4(Internet Protocol version 4,IPv4),又稱網際網路通訊協定第四版,是网际协议开发过程中的第四个修订版本,也是此协议第一个被广泛部署的版本。IPv4是互联网的核心,也是使用最广泛的网际协议版本,其後繼版本為IPv6,直到2011年,IANA IPv4位址完全用盡時,IPv6仍处在部署的初期。 IPv4在IETF于1981年9月发布的 RFC 791 中被描述,此RFC替换了于1980年1月发布的 RFC 760。 IPv4是一种无连接的协议,操作在使用分组交换的链路层(如以太网)上。此协议会尽最大努力交付数据包,意即它不保证任何数据包均能送达目的地,也不保证所有数据包均按照正确的顺序无重复地到达。这些方面是由上层的传输协议(如传输控制协议)处理的。.
IPv6
网际协议第6版(英文:Internet Protocol version 6,縮寫:IPv6)是网际协议(IP)的最新版本,用作互联网的網路層協議,用它来取代IPv4主要是为了解决IPv4地址枯竭问题,不过它也在其他很多方面对IPv4有所改进。 IPv6的设计目的是取代IPv4,然而长期以来IPv4在互联网流量中仍占据主要地位,IPv6的使用增长缓慢。在2017年7月,通过IPv6使用Google服务的用户百分率首次超过20%。.
Linux
Linux( )是一種自由和開放源碼的類UNIX作業系統。该操作系统的内核由林纳斯·托瓦兹在1991年10月5日首次发布。,在加上使用者空間的應用程式之後,成為Linux作業系統。Linux也是自由软件和开放源代码软件发展中最著名的例子。只要遵循GNU通用公共许可证(GPL),任何个人和机构都可以自由地使用Linux的所有底层源代码,也可以自由地修改和再发布。大多數Linux系統還包括像提供GUI的X Window之類的程序。除了一部分專家之外,大多數人都是直接使用Linux發行版,而不是自己選擇每一樣組件或自行設置。 Linux嚴格來說是單指作業系統的内核,因作業系統中包含了許多用戶圖形介面和其他实用工具。如今Linux常用来指基于Linux的完整操作系统,內核則改以Linux内核稱之。由于这些支持用户空间的系统工具和库主要由理查德·斯托曼于1983年发起的GNU计划提供,自由软件基金会提议将其组合系统命名为GNU/Linux,但Linux不屬於GNU計劃,這個名稱並沒有得到社群的一致認同。 Linux最初是作为支持英特尔x86架构的个人电脑的一个自由操作系统。目前Linux已经被移植到更多的计算机硬件平台,远远超出其他任何操作系统。Linux可以运行在服务器和其他大型平台之上,如大型主机和超级计算机。世界上500个最快的超级计算机90%以上运行Linux发行版或变种,包括最快的前10名超级电脑运行的都是基于Linux内核的操作系统。Linux也广泛应用在嵌入式系统上,如手机(Mobile Phone)、平板电脑(Tablet)、路由器(Router)、电视(TV)和电子游戏机等。在移动设备上广泛使用的Android操作系统就是建立在Linux内核之上。 通常情况下,Linux被打包成供个人计算机和服务器使用的Linux发行版,一些流行的主流Linux发布版,包括Debian(及其衍生版本Ubuntu、Linux Mint)、Fedora(及其相关版本Red Hat Enterprise Linux、CentOS)和openSUSE等。Linux发行版包含Linux内核和支撑内核的实用程序和库,通常还带有大量可以满足各类需求的应用程序。个人计算机使用的Linux发行版通常包含X Window和一个相应的桌面环境,如GNOME或KDE。桌面Linux操作系统常用的应用程序,包括Firefox网页浏览器、LibreOffice办公软件、GIMP图像处理工具等。由于Linux是自由软件,任何人都可以创建一个符合自己需求的Linux发行版。.
UNIX
UNIX,一种计算机操作系统,具有多任务、多用户的特征。于1969年,在美国AT&T公司的贝尔实验室开发類UNIX(UNIX-like)。.
Unix域套接字
Unix domain socket 或者 IPC socket是一种终端,可以使同一台操作系统上的两个或多个进程进行数据通信。与管道相比,Unix domain sockets 既可以使用字节流,又可以使用数据队列,而管道通信则只能使用字节流。Unix domain sockets的接口和Internet socket很像,但它不使用网络底层协议来通信。Unix domain socket 的功能是POSIX操作系统里的一种组件。 Unix domain sockets 使用系统文件的地址来作为自己的身份。它可以被系统进程引用。所以两个进程可以同时打开一个Unix domain sockets来进行通信。不过这种通信方式是发生在系统内核里而不会在网络里传播。 Category:Unix Category:網路插座.
Winsock
Windows Sockets API (WSA), 简短记为Winsock, 是Windows的TCP/IP网络编程接口(API)。兼容于Berkeley socketsAPI在函数名字。实际上,Winsock的实现库(winsock.dll)使用的是长名字。.
流控制传输协议
串流控制传输协议(Stream Control Transmission Protocol 或简写 SCTP)是在2000年由 IETF 的 SIGTRAN 工作组定义的一个传输层协议。RFC 4960 详细地定义了 SCTP,介绍性的文档是RFC 3286。 作为一个传输层协议,SCTP 可以理解为和 TCP 及 UDP 相类似的。它提供的服务有点像 TCP,又同时将 UDP 的一些优点相结合。是一种提供了可靠、高效、有序的数据传输协议。相比之下 TCP 是面向字节的,而 SCTP 是针对成帧的消息。 SCTP 主要的贡献是对多重联外线路的支持,一个端点可以由多于一个 IP地址 组成,使得传输可在主机间或网卡间做到透明的网络容错备援。 SCTP 最初是被设计用于在 IP 上传输电话协议(SS7),把 SS7 信令网络的一些可靠特性引入 IP。IETF 的这方面的工作称为信令传输 SIGTRAN。 SCTP將資料傳給應用層的方式,是將資料視為message(bytes的集合),SCTP的特徵是message-oriented,意思就是說它傳送的是一串message(每一個message是byte為單位的集合),相對於TCP是以byte為單位,傳送的是破碎的串流。在SCTP發送端用一個動作送出訊息,接收端也是用一個動作取出訊息傳給對應的應用程序。相較於TCP,是一個串流導向的協定,可靠地且有順序地傳送以bytes為單位的串流。然而TCP並不允許接收端知道發送端的應用程式呼叫送出bytes集合的次數。在發送端TCP只是簡單的附加更多bytes在queue裡等待著送到網路上,而SCTP是將要送出的outband message都保有自己獨立的queue。.
文件描述符
文件描述符(File descriptor)是计算机科学中的一个术语,是一个用于表述指向文件的引用的抽象化概念。.
操作系统
操作系统(operating system,縮寫作 OS)是管理计算机硬件與软件資源的计算机程序,同时也是计算机系统的核心与基石。操作系统需要处理如管理與配置内存、決定系統資源供需的優先次序、控制輸入與輸出裝置、操作网络與管理文件系统等基本事務。操作系统也提供一個讓使用者與系統互動的操作界面。 操作系统的型態非常多樣,不同機器安裝的操作系统可從簡單到複雜,可從行動電話的嵌入式系统到超級電腦的大型作業系統。許多操作系统製造者對它涵盖范畴的定义也不尽一致,例如有些操作系统整合了图形用户界面,而有些僅使用命令行界面,而將图形用户界面視為一種非必要的應用程式。 操作系统理论在计算机科学中,為歷史悠久的分支;。.
手册页
手册页(Manual pages,缩写man page)是在Unix或类Unix操作系统在线软件文档的一种普遍的形式。 内容包括计算机程序(包括库和系统调用),正式的标准和惯例,甚至是抽象的概念。用户可以通过执行man命令调用手册页。.
另见
BSD
- BSD
- BSD小惡魔
- BSD许可证
- Berkeley套接字
- Darwin (操作系统)
- DragonFly BSD
- NeXTSTEP
- OpenStep
- Ports
- Rhapsody
- SunOS
- Unix文件系统
- Version 7 Unix
- 计算机系统研究小组
網路插座
亦称为 Berkeley sockets。