分享
 
 
 

RFC147 - Definition of a socket

王朝other·作者佚名  2008-05-31
窄屏简体版  字體: |||超大  

Network Working Group

Request for Comment 147

NIC 6750

The Definition of a Socket

Joel M. Winett

Lincoln Laboratory

360/67

7 May 1971

Category: C1, C3, D1, H

RFCobsoleted: None

RFCupdated: None

Related RFCs: RFC-129 (NIC-5845)

This material has not been reviewed for public release and is intended

only for use with the ARPA network. It should not be quoted or cited

in any publication not related to the ARPA network.

[Page 1]

MASSACHUSETTS INSTITUTE OF TECHNOLOGY

LINCOLN LABORATORY

TO: Network Socket Committee and Network Community 7 May 1971

FROM: J. M. Winett (LL)

SUBJECT: The Definition of a Socket

A socket is defined to be the unique identification to or from which

information is transmitted in the network. The socket is specified as a 32

bit number with even sockets identifying receiving sockets and odd sockets

identifying sending sockets. A socket is also identified by the host in

which the sending or receiving processer is located.

Previous network papers postulated that a process running under control of

the host's operating system would have Access to a number of ports. A port

might be a physical input or output device, or a logical I/O device

supported by system calls to the host's operating system. The latter

category includes a) I/O directed to a physical device which is being

spooled by the operating system, b) a physical device whose basic

characteristics have not been altered but whose access has been limited and

possibly transformed by a mapping algorithm (e.g. device address mapping or

cylinder relocation as in virtual mini disks), c) access to a file system

through a Directory and access method maintained by the operating system,

d) a procedure for process to process communications, e) a procedure for

machine to machine communication (sUCh as defined by the network protocol.)

A socket has been defined to be the identification of a port for machine to

machine communication through the ARPA network. Sockets allocated to each

host must be uniquely associated with a known process or be undefined. The

name of some sockets must be universally known and associated with a known

process operating with a specified protocol. (e.g., a logger socket, RJE

socket, a file transfer socket). The name of other sockets might not be

universally known, but given in a transmission over a universally known

socket, (c. g. the socket pair specified by the transmission over the

logger socket under the Initial Connection Protocol (ICP). In any case,

communication over the network is from one socket to another socket, each

socket being identified with a process running at a known host.

The question arises as to whether socket names must be known to users of

network programs or whether the specification of sockets can be made

transparent to the user. Also, should the socket used at one time by a

process be the same socket used at a later time by the same process for the

same purpose? If sockets are not transparent to the user, then the sockets

used must not be dependent on the order in which network connections are

made.

The definition of a socket is also related to the accounting procedures

followed for network usage. Network Control Programs (NCPs) should log

each connection made and record the time the connection was made, the time

the connection was closed, the number of messages and number of bits

transmitted over the connection, the sending and receiving hosts, and the

sockets at the sending host and receiving host which participated in the

connection. In order for these sockets to be meaningful, they should be

identifiable with the user, account, or process name with which each socket

is associated.

It has previously been suggested that the sockets used by a network user be

identified with that user no matter which host he used for network

communications. Users would be registered at some host and be identified as

a user from that host even if he used the system as a second host to

communicate with the system at a third host.

To satisfy the above requirements within the name space of a 32 bit socket,

the following procedure is suggested. This procedure has been implemented

with the NCP on the Lincoln Laboratory 360/67 system and is used by all

processes making use of network facilities. ) A 32 bit socket is divided

into an 8 bit "home" field, a 16 bit "user" field and an 8 bit "tag" field.

The tag consists of a 7 bit "plug" and a one bit "polarity" where a "0"

polarity indicates a receive socket and a "1" polarity indicates a send

socket. Thus a user on one host system may run processes with up to 128

send sockets and 128 receive sockets. This procedure allows for 256 hosts

and 65,536 users per host. The only difficulty is in mapping user or

process identifiers at a host into a 16 bit user number. This may be done

through a table lookup, possibly using a hash coding technique. Though

many systems have a unique run time index associated with each process, if

this index were used as the user number, the user number would not be the

same each time the process were used for network activity. What is

required, is a unique mapping from a process identifier (usually a

character string) into a 16 bit binary number.

The sockets used for facilities following a common network protocol, such

as the ICP, should also follow this socket definition. Thus the logger

socket at the Lincoln Laboratory 360/67 would be, and is, x'0A0000 01, ',

i.e. home 10, user 0, and tag 1.

This procedure for defining sockets enables an accounting procedure for

identifying users of network facilities and for measuring network usage.

[ This RFCwas put into machine readable form for entry ]

[ into the online RFCarchives by BBN Corp. under the ]

[ direction of Alex McKenzie. 12/96 ]

 
 
 
免责声明:本文为网络用户发布,其观点仅代表作者个人观点,与本站无关,本站仅提供信息存储服务。文中陈述内容未经本站证实,其真实性、完整性、及时性本站不作任何保证或承诺,请读者仅作参考,并请自行核实相关内容。
2023年上半年GDP全球前十五强
 百态   2023-10-24
美众议院议长启动对拜登的弹劾调查
 百态   2023-09-13
上海、济南、武汉等多地出现不明坠落物
 探索   2023-09-06
印度或要将国名改为“巴拉特”
 百态   2023-09-06
男子为女友送行,买票不登机被捕
 百态   2023-08-20
手机地震预警功能怎么开?
 干货   2023-08-06
女子4年卖2套房花700多万做美容:不但没变美脸,面部还出现变形
 百态   2023-08-04
住户一楼被水淹 还冲来8头猪
 百态   2023-07-31
女子体内爬出大量瓜子状活虫
 百态   2023-07-25
地球连续35年收到神秘规律性信号,网友:不要回答!
 探索   2023-07-21
全球镓价格本周大涨27%
 探索   2023-07-09
钱都流向了那些不缺钱的人,苦都留给了能吃苦的人
 探索   2023-07-02
倩女手游刀客魅者强控制(强混乱强眩晕强睡眠)和对应控制抗性的关系
 百态   2020-08-20
美国5月9日最新疫情:美国确诊人数突破131万
 百态   2020-05-09
荷兰政府宣布将集体辞职
 干货   2020-04-30
倩女幽魂手游师徒任务情义春秋猜成语答案逍遥观:鹏程万里
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案神机营:射石饮羽
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案昆仑山:拔刀相助
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案天工阁:鬼斧神工
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案丝路古道:单枪匹马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:与虎谋皮
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:李代桃僵
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案镇郊荒野:指鹿为马
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:小鸟依人
 干货   2019-11-12
倩女幽魂手游师徒任务情义春秋猜成语答案金陵:千金买邻
 干货   2019-11-12
 
推荐阅读
 
 
 
>>返回首頁<<
 
靜靜地坐在廢墟上,四周的荒凉一望無際,忽然覺得,淒涼也很美
© 2005- 王朝網路 版權所有