Ethernet: Distributed Packet Switching for Local Computer Networks

About this paper

This paper is under a licence that does not allow it to be reproduced, so what is here is its front matter and a short abstract. Read it at the publisher's page.

Tiếng Việt
English

Hệ thống Máy tính

G. Bell, S. Fuller và D. Siewiorek, Biên tập viên

Ethernet: Chuyển mạch Gói Phân tán cho các Mạng Máy tính Cục bộ

Robert M. Metcalfe và David R. Boggs Trung tâm Nghiên cứu Palo Alto của Xerox

Ethernet là một hệ thống truyền thông quảng bá phân nhánh để mang các gói dữ liệu số giữa các trạm tính toán được phân bố cục bộ. Cơ chế vận chuyển gói tin do Ethernet cung cấp đã được sử dụng để xây dựng các hệ thống có thể được xem như các mạng máy tính cục bộ hoặc các bộ đa xử lý ghép nối lỏng. Cơ sở truyền thông dùng chung của một Ethernet, Ether của nó, là một môi trường quảng bá thụ động không có điều khiển trung tâm. Việc phối hợp quyền truy cập vào Ether để phát quảng bá gói tin được phân tán giữa các trạm truyền đang tranh chấp bằng cách sử dụng phân xử thống kê có kiểm soát. Việc chuyển mạch các gói tin đến đích của chúng trên Ether được phân tán giữa các trạm nhận bằng cách sử dụng nhận dạng địa chỉ gói tin. Các nguyên tắc thiết kế và việc triển khai được mô tả, dựa trên kinh nghiệm với một Ethernet đang hoạt động gồm 100 nút dọc theo một kilômét cáp đồng trục. Một mô hình để ước lượng hiệu năng dưới tải nặng và một giao thức gói tin cho truyền thông có kiểm soát lỗi được đưa vào để hoàn chỉnh.

Từ khóa và Cụm từ: mạng máy tính, chuyển mạch gói, đa xử lý, điều khiển phân tán, tính toán phân tán, truyền thông quảng bá, phân xử thống kê

Phân loại CR: 3.81, 4.32, 6.35

Bản quyền © 1976, Association for Computing Machinery, Inc. Quyền chung cho phép tái bản, nhưng không nhằm mục đích lợi nhuận, toàn bộ hoặc một phần tài liệu này được cấp với điều kiện thông báo bản quyền của ACM được đưa vào và tham chiếu được thực hiện đến ấn phẩm, ngày phát hành của nó, và thực tế rằng các quyền tái bản đã được cấp theo sự cho phép của Association for Computing Machinery.

Địa chỉ hiện tại của các tác giả: R. M. Metcalfe, Transaction Technology, Inc., 10880 Wilshire Boulevard, Los Angeles, CA 94304; D. Boggs, Xerox Palo Alto Research Center, 3333 Coyote Hill Road, Palo Alto, CA 94304.

Computer Systems G. Bell, S. Fuller and D. Siewiorek, Editors

Ethernet: Distributed Packet Switching for Local Computer Networks

Robert M. Metcalfe and David R. Boggs Xerox Palo Alto Research Center

Ethernet is a branching broadcast communication system for carrying digital data packets among locally distributed computing stations. The packet transport mechanism provided by Ethernet has been used to build systems which can be viewed as either local computer networks or loosely coupled multiprocessors. An Ethernet’s shared communication facility, its Ether, is a passive broadcast medium with no central control. Coordination of access to the Ether for packet broadcasts is distributed among the contending transmitting stations using controlled statistical arbitration. Switching of packets to their destinations on the Ether is distributed among the receiving stations using packet address recognition. Design principles and implementation are described, based on experience with an operating Ethernet of 100 nodes along a kilometer of coaxial cable. A model for estimating performance under heavy loads and a packet protocol for error controlled communication are included for completeness.

Key Words and Phrases: computer networks, packet switching, multiprocessing, distributed control, distributed computing, broadcast communication, statistical arbitration

CR Categories: 3.81, 4.32, 6.35

1 Bối cảnh

1 Background

Có thể đặc trưng hóa tính toán phân tán như một phổ các hoạt động thay đổi theo mức độ phi tập trung của chúng, với một cực là mạng máy tính từ xa và cực kia là xử lý đa nhiệm. Mạng máy tính từ xa là sự kết nối lỏng lẻo của các hệ thống tính toán trước đây bị cô lập, cách xa nhau và tương đối lớn. Xử lý đa nhiệm là việc xây dựng các hệ thống tính toán trước đây nguyên khối và tuần tự từ những phần ngày càng nhiều và nhỏ hơn, thực hiện tính toán song song. Gần giữa phổ này là mạng cục bộ, sự kết nối các máy tính để đạt được khả năng chia sẻ tài nguyên của mạng máy tính và tính song song của xử lý đa nhiệm.

One can characterize distributed computing as a spectrum of activities varying in their degree of decentralization, with one extreme being remote computer networking and the other extreme being multiprocessing. Remote computer networking is the loose interconnection of previously isolated, widely separated, and rather large computing systems. Multiprocessing is the construction of previously monolithic and serial computing systems from increasingly numerous and smaller pieces computing in parallel. Near the middle of this spectrum is local networking, the interconnection of computers to gain the resource sharing of computer networking and the parallelism of multiprocessing.

Khoảng cách giữa các máy tính và tốc độ bit liên quan trong việc truyền thông của chúng có thể được dùng để chia phổ tính toán phân tán thành các hoạt động rộng. Tích của khoảng cách và tốc độ bit, hiện khoảng 1 gigabit-meter mỗi giây (1 Gbmps), là một chỉ dấu về giới hạn của công nghệ truyền thông hiện tại và có thể được kỳ vọng sẽ tăng theo thời gian:

The separation between computers and the associated bit rate of their communication can be used to divide the distributed computing spectrum into broad activities. The product of separation and bit rate, now about 1 gigabit-meter per second (1 Gbmps), is an indication of the limit of current communication technology and can be expected to increase with time:

Hoạt độngKhoảng cáchTốc độ bit
Mạng từ xa> 10 km< .1 Mbps
Mạng cục bộ10–.1 km.1–10 Mbps
Bộ xử lý đa nhiệm< .1 km> 10 Mbps
ActivitySeparationBit rate
Remote networks&gt; 10 km&lt;.1 Mbps
Local networks10-.1 km.1–10 Mbps
Multiprocessors&lt;.1 km&gt;10 Mbps
1.1 Mạng máy tính từ xa
1.1 Remote Computer Networking

Mạng máy tính phát triển từ truyền thông terminal-computer trong viễn thông, trong đó mục tiêu là kết nối các terminal từ xa với một cơ sở tính toán trung tâm. Khi nhu cầu kết nối computer-computer tăng lên, chính các máy tính được sử dụng để cung cấp truyền thông [2, 4, 29]. Truyền thông using máy tính làm các bộ chuyển mạch gói tin [15-21, 26] và truyền thông among các máy tính để chia sẻ tài nguyên [10, 32] đều được thúc đẩy bởi sự phát triển của Arpa Computer Network.

Computer networking evolved from telecommunications terminal-computer communication, where the object was to connect remote terminals to a central computing facility. As the need for computer-computer interconnection grew, computers themselves were used to provide communication [2, 4, 29]. Communication using computers as packet switches [15–21, 26] and communications among computers for resource sharing [10, 32] were both advanced by the development of the Arpa Computer Network.

Aloha Network tại University of Hawaii ban đầu được phát triển để áp dụng các kỹ thuật radio gói tin cho truyền thông giữa một máy tính trung tâm và các terminal của nó phân tán trên các quần đảo Hawaii [1, 2]. Nhiều terminal hiện nay là các minicomputer truyền thông với nhau bằng cách sử dụng Menehune của Aloha Network như một bộ chuyển mạch gói tin. Menehune và một Arpanet Imp hiện đã được kết nối, cung cấp cho các terminal trên Aloha Network quyền truy cập vào các tài nguyên tính toán trên đất liền Hoa Kỳ.

The Aloha Network at the University of Hawaii was originally developed to apply packet radio techniques for communication between a central computer and its terminals scattered among the Hawaiian Islands [1, 2]. Many of the terminals are now minicomputers communicating among themselves using the Aloha Network’s Menehune as a packet switch. The Menehune and an Arpanet Imp are now connected, providing terminals on the Aloha Network access to computing resources on the U.S. mainland.

Cũng như các mạng máy tính đã phát triển xuyên qua các lục địa và đại dương để kết nối các cơ sở tính toán lớn trên toàn thế giới, chúng hiện đang phát triển dọc theo các hành lang và giữa các tòa nhà để kết nối các minicomputer trong văn phòng và phòng thí nghiệm [3, 12, 13, 14, 35].

Just as computer networks have grown across continents and oceans to interconnect major computing facilities around the world, they are now growing down corridors and between buildings to interconnect minicomputers in offices and laboratories [3, 12, 13, 14, 35].

1.2 Xử lý đa nhiệm
1.2 Multiprocessing

Xử lý đa nhiệm ban đầu có dạng kết nối một bộ điều khiển I/O với một máy tính trung tâm lớn; Asp của IBM là một

Multiprocessing first took the form of connecting an I/O controller to a large central computer; IBM’s Asp is a classic example [29]. Next, multiple central processors were connected to a common memory to provide more power for compute-bound applications [33]. For certain of these applications, more exotic multiprocessor architectures such as Illiac IV were introduced [5].

Communications of the ACM

More recently minicomputers have been connected in multiprocessor configurations for economy, reliability, and increased system modularity [24, 36]. The trend has been toward decentralization for reliability; loosely coupled multiprocessor systems depend less on shared central memory and more on thin wires for interprocess communication with increased component isolation [18, 26]. With the continued thinning of interprocessor communication for reliability and the development of distributable applications, multiprocessing is gradually approaching a local form of distributed computing.

Tháng 7 1976 Tập 19 ví dụ kinh điển [29]. Tiếp theo, nhiều bộ xử lý trung tâm được kết nối với một bộ nhớ chung để cung cấp nhiều năng lực hơn cho các ứng dụng bị giới hạn bởi tính toán [33]. Đối với một số ứng dụng này, các kiến trúc bộ xử lý đa nhiệm phức tạp hơn như Illiac IV đã được đưa vào [5].

1.3 Local Computer Networking

Gần đây hơn, các minicomputer đã được kết nối trong các cấu hình bộ xử lý đa nhiệm vì tính kinh tế, độ tin cậy và tính mô-đun hệ thống tăng lên [24, 36]. Xu hướng đã hướng tới sự phi tập trung để tăng độ tin cậy; các hệ thống bộ xử lý đa nhiệm ghép lỏng phụ thuộc ít hơn vào bộ nhớ trung tâm dùng chung và nhiều hơn vào thin wires cho truyền thông giữa các tiến trình với sự cô lập thành phần tăng lên [18, 26]. Với việc tiếp tục làm mỏng truyền thông giữa các bộ xử lý vì độ tin cậy và sự phát triển của các ứng dụng có thể phân phối, xử lý đa nhiệm đang dần tiến gần tới một dạng cục bộ của tính toán phân tán.

Ethernet shares many objectives with other local networks such as Mitre’s Mitrix, Bell Telephone Laboratory’s Spider, and U.C. Irvine’s Distributed Computing System (DCS) [12, 13, 14, 35]. Prototypes of all four local networking schemes operate at bit rates between one and three megabits per second. Mitrix and Spider have a central minicomputer for switching and bandwidth allocation, while DCS and Ethernet use distributed control. Spider and DCS use a ring communication path, Mitrix uses off-the-shelf CATV technology to implement two one-way busses, and our experimental Ethernet uses a branching two-way passive bus. Differences among these systems are due to differences among their intended applications, differences among the cost constraints under which trade-offs were made, and differences of opinion among researchers.

1.3 Mạng máy tính cục bộ

Before going into a detailed description of Ethernet, we offer the following overview (see Figure 1).

Ethernet chia sẻ nhiều mục tiêu với các mạng cục bộ khác như Mitre’s Mitrix, Bell Telephone Laboratory’s Spider và U.C. Irvine’s Distributed Computing System (DCS) [12, 13, 14, 35]. Các nguyên mẫu của cả bốn sơ đồ mạng cục bộ này hoạt động ở tốc độ bit từ một đến ba megabit mỗi giây. Mitrix và Spider có một minicomputer trung tâm để chuyển mạch và phân bổ băng thông, trong khi DCS và Ethernet sử dụng điều khiển phân tán. Spider và DCS sử dụng đường truyền thông hình vòng, Mitrix sử dụng công nghệ CATV có sẵn để triển khai hai bus một chiều, và Ethernet thử nghiệm của chúng tôi sử dụng một bus thụ động hai chiều phân nhánh. Sự khác biệt giữa các hệ thống này là do sự khác biệt giữa các ứng dụng dự kiến của chúng, sự khác biệt giữa các ràng buộc chi phí mà trong đó các đánh đổi được thực hiện, và sự khác biệt về quan điểm giữa các nhà nghiên cứu.

Nothing here.

Trước khi đi vào mô tả chi tiết về Ethernet, chúng tôi đưa ra tổng quan sau đây (xem Hình 1).

Nothing here.

2 Tóm tắt hệ thống

2 System Summary

Ethernet là một hệ thống dành cho giao tiếp cục bộ giữa các trạm tính toán. Ethernet thử nghiệm của chúng tôi sử dụng các cáp đồng trục có điểm nối để truyền các gói tin dữ liệu số có độ dài thay đổi giữa, ví dụ, các máy tính mini cá nhân, các cơ sở in ấn, các thiết bị lưu trữ file lớn, các trạm sao lưu băng từ, các máy tính trung tâm lớn hơn và các thiết bị truyền thông đường dài hơn.

Ethernet is a system for local communication among computing stations. Our experimental Ethernet uses tapped coaxial cables to carry variable length digital data packets among, for example, personal minicomputers, printing facilities, large file storage devices, magnetic tape backup stations, larger central computers, and longer-haul communication equipment.

Cơ sở giao tiếp dùng chung, một Ether phân nhánh, là thụ động. Giao diện Ethernet của một trạm kết nối theo kiểu bit nối tiếp thông qua một cáp giao diện tới một bộ thu phát, bộ này lần lượt nối vào Ether đang truyền. Một gói tin được phát quảng bá lên Ether, được tất cả các trạm nghe thấy và được các đích sao chép từ Ether bằng cách lựa chọn nó theo các bit địa chỉ đứng đầu của gói tin. Đây là chuyển mạch gói tin quảng bá và cần được phân biệt với chuyển mạch gói tin lưu trữ và chuyển tiếp, trong đó việc định tuyến được thực hiện bởi các phần tử xử lý trung gian. Để đáp ứng các yêu cầu của sự phát triển, một Ethernet có thể được mở rộng bằng cách sử dụng các bộ lặp gói tin để tái tạo tín hiệu, các bộ lọc gói tin để bản địa hóa lưu lượng và các cổng gói tin để mở rộng địa chỉ liên mạng.

The shared communication facility, a branching Ether, is passive. A station’s Ethernet interface connects bit-serially through an interface cable to a transceiver which in turn taps into the passing Ether. A packet is broadcast onto the Ether, is heard by all stations, and is copied from the Ether by destinations which select it according to the packet’s leading address bits. This is broadcast packet switching and should be distinguished from store-and-forward packet switching, in which routing is performed by intermediate processing elements. To handle the demands of growth, an Ethernet can be extended using packet repeaters for signal regeneration, packet filters for traffic localization, and packet gateways for internetwork address extension.

Điều khiển được phân tán hoàn toàn giữa các trạm, với việc truyền các gói tin được phối hợp thông qua phân xử thống kê. Các lần truyền do một trạm khởi tạo sẽ trì hoãn trước bất kỳ lần truyền nào có thể đã đang diễn ra. Khi đã bắt đầu, nếu phát hiện sự can thiệp với các gói tin khác, một lần truyền sẽ bị hủy bỏ và được trạm nguồn lập lịch lại. Sau một khoảng thời gian truyền không có can thiệp nhất định, một gói tin được tất cả các trạm nghe thấy và sẽ chạy đến khi hoàn thành mà không bị can thiệp. Các bộ điều khiển Ethernet trong các trạm xảy ra va chạm mỗi bộ tạo ra các khoảng thời gian truyền lại ngẫu nhiên để tránh các va chạm lặp lại. Giá trị trung bình của các khoảng thời gian truyền lại của một gói tin được điều chỉnh như một hàm của lịch sử va chạm để giữ mức sử dụng Ether gần với mức tối ưu khi tải mạng thay đổi.

Control is completely distributed among stations, with packet transmissions coordinated through statistical arbitration. Transmissions initiated by a station defer to any which may already be in progress. Once started, if interference with other packets is detected, a transmission is aborted and rescheduled by its source station. After a certain period of interference-free transmission, a packet is heard by all stations and will run to completion without interference. Ethernet controllers in colliding stations each generate random retransmission intervals to avoid repeated collisions. The mean of a packet’s retransmission intervals is adjusted as a function of collision history to keep Ether utilization near the optimum with changing network load.

Ngay cả khi được truyền mà không có can thiệp do nguồn phát hiện, một gói tin vẫn có thể không đến được đích mà không có lỗi; do đó, các gói tin được phân phối chỉ với xác suất cao. Các trạm yêu cầu tỷ lệ lỗi dư thấp hơn mức được cung cấp bởi cơ chế vận chuyển gói tin Ethernet cơ bản phải tuân theo các giao thức gói tin được thỏa thuận lẫn nhau.

Even when transmitted without source-detected interference, a packet may still not reach its destination without error; thus, packets are delivered only with high probability. Stations requiring a residual error rate lower than that provided by the bare Ethernet packet transport mechanism must follow mutually agreed upon packet protocols.

3 Nguyên tắc thiết kế

3 Design Principles

Mục tiêu của chúng tôi là thiết kế một hệ thống truyền thông có thể mở rộng một cách trơn tru để đáp ứng một số tòa nhà đầy các máy tính cá nhân và các phương tiện cần thiết cho việc hỗ trợ chúng.

Our object is to design a communication system which can grow smoothly to accommodate several buildings full of personal computers and the facilities needed for their support.

Giống như các trạm tính toán sẽ được kết nối, hệ thống truyền thông phải có chi phí thấp. Chúng tôi chọn phân tán quyền điều khiển của phương tiện truyền thông giữa các máy tính giao tiếp để loại bỏ các vấn đề về độ tin cậy của một bộ điều khiển trung tâm chủ động, tránh tạo ra nút thắt cổ chai trong một hệ thống giàu tính song song, và giảm các chi phí cố định khiến các hệ thống nhỏ trở nên không kinh tế.

Like the computing stations to be connected, the communication system must be inexpensive. We choose to distribute control of the communications facility among the communicating computers to eliminate the reliability problems of an active central controller, to avoid creating a bottleneck in a system rich in parallelism, and to reduce the fixed costs which make small systems uneconomical.

Thiết kế Ethernet bắt đầu từ ý tưởng cơ bản về va chạm gói tin và truyền lại được phát triển trong Aloha Network [1]. Chúng tôi dự đoán rằng, giống như Aloha Network, các Ethernet sẽ mang lưu lượng bùng phát, do đó kỹ thuật ghép kênh phân chia thời gian đồng bộ (STDM) thông thường sẽ không hiệu quả [1, 2, 21, 26]. Chúng tôi nhận thấy triển vọng trong cách tiếp cận Aloha đối với việc điều khiển phân tán của ghép kênh kênh vô tuyến và hy vọng rằng nó có thể được áp dụng hiệu quả với các môi trường phù hợp cho truyền thông máy tính cục bộ. Với một số cải tiến của riêng chúng tôi, triển vọng đó đã trở thành hiện thực.

Ethernet design started with the basic idea of packet collision and retransmission developed in the Aloha Network [1]. We expected that, like the Aloha Network, Ethernets would carry bursty traffic so that conventional synchronous time-division multiplexing (STDM) would be inefficient [1, 2, 21, 26]. We saw promise in the Aloha approach to distributed control of radio channel multiplexing and hoped that it could be applied effectively with media suited to local computer communication. With several innovations of our own, the promise is realized.

Ethernet được đặt tên theo luminiferous ether trong lịch sử, môi trường mà các bức xạ điện từ từng được cho là lan truyền qua đó. Giống như một bộ phát vô tuyến Aloha, một bộ phát Ethernet phát quảng bá các chuỗi bit đồng bộ với bộ phát, có địa chỉ đầy đủ, được gọi là các gói tin lên Ether và hy vọng rằng chúng được các bộ nhận dự định nghe thấy. Ether là một môi trường thụ động về mặt logic để lan truyền các tín hiệu số và có thể được xây dựng bằng bất kỳ số lượng môi trường nào bao gồm cáp đồng trục, cặp xoắn và sợi quang.

Ethernet is named for the historical luminiferous ether through which electromagnetic radiations were once alleged to propagate. Like an Aloha radio transmitter, an Ethernet transmitter broadcasts completely-addressed transmitter-synchronous bit sequences called packets onto the Ether and hopes that they are heard by

Fig. 1. Một Ethernet hai đoạn.

Fig. 1. A two-segment Ethernet.

3.1 Tôpô

Figure.

Chúng tôi không thể chịu được các kết nối dư thừa và định tuyến động của chuyển mạch gói lưu trữ-và-chuyển tiếp để đảm bảo truyền thông tin cậy, vì vậy chúng tôi chọn đạt được độ tin cậy thông qua sự đơn giản. Chúng tôi chọn làm cho phương tiện truyền thông dùng chung trở nên thụ động để sự cố của một phần tử chủ động sẽ có xu hướng chỉ ảnh hưởng đến truyền thông của một trạm duy nhất. Bố cục và các nhu cầu thay đổi của các tòa nhà văn phòng và phòng thí nghiệm dẫn chúng tôi đến việc chọn một tôpô mạng có tiềm năng mở rộng tăng dần và cấu hình lại thuận tiện với sự gián đoạn dịch vụ tối thiểu.

the intended receivers. The Ether is a logically passive medium for the propagation of digital signals and can be constructed using any number of media including coaxial cables, twisted pairs, and optical fibers.

Tôpô của Ethernet là một cây không gốc. Nó là một cây để Ether có thể phân nhánh tại lối vào hành lang của một tòa nhà, đồng thời tránh nhiễu đa đường. Chỉ được có một đường đi qua Ether giữa bất kỳ nguồn và đích nào; nếu tồn tại nhiều hơn một đường đi, một truyền dẫn sẽ gây nhiễu với chính nó, liên tục đến đích dự định sau khi đã truyền qua các đường đi có độ dài khác nhau. Ether là không gốc vì nó có thể được mở rộng từ bất kỳ điểm nào của nó theo bất kỳ hướng nào. Bất kỳ trạm nào muốn tham gia Ethernet đều kết nối vào Ether tại điểm thuận tiện gần nhất.

3.1 Topology

Xét mối quan hệ giữa liên kết và điều khiển, chúng ta thấy rằng Ethernet là đối ngẫu của một mạng sao. Thay vì liên kết phân tán thông qua nhiều liên kết riêng biệt và điều khiển trung tâm trong một nút chuyển mạch, như trong mạng sao, Ethernet có liên kết trung tâm thông qua Ether và điều khiển phân tán giữa các trạm của nó.

We cannot afford the redundant connections and dynamic routing of store-and-forward packet switching to assure reliable communication, so we choose to achieve reliability through simplicity. We choose to make the shared communication facility passive so that the failure of an active element will tend to affect the communications of only a single station. The layout and changing needs of office and laboratory buildings leads us to pick a network topology with the potential for convenient incremental extention and reconfiguration with minimal service disruption.

Không giống như Aloha Network, vốn là một mạng sao với một kênh phát quảng bá đi ra và một kênh đa truy nhập đi vào, Ethernet hỗ trợ truyền thông nhiều-đến-nhiều với một kênh đa truy nhập phát quảng bá duy nhất.

The topology of the Ethernet is that of an unrooted tree. It is a tree so that the Ether can branch at the entrance to a building’s corridor, yet avoid multipath interference. There must be only one path through the Ether between any source and destination; if more than one path were to exist, a transmission would interfere with itself, repeatedly arriving at its intended destination having travelled by paths of different length. The Ether is unrooted because it can be extended from any of its points in any direction. Any station wishing to join an Ethernet taps into the Ether at the nearest convenient point.

3.2 Điều khiển

Looking at the relationship of interconnection and control, we see that Ethernet is the dual of a star network. Rather than distributed interconnection through many separate links and central control in a switching node, as in a star network, the Ethernet has central interconnection through the Ether and distributed control among its stations.

Việc chia sẻ Ether được điều khiển theo cách sao cho không chỉ có thể mà còn có khả năng hai hoặc nhiều trạm sẽ cố gắng truyền một gói tin vào xấp xỉ cùng một thời điểm. Các gói tin chồng lấn theo thời gian trên Ether được gọi là va chạm; chúng gây nhiễu đến mức không thể được bộ nhận nhận dạng. Một trạm phục hồi từ một va chạm đã phát hiện bằng cách từ bỏ lần thử và truyền lại gói tin sau một khoảng thời gian ngẫu nhiên được chọn động. Việc phân xử các yêu cầu truyền dẫn xung đột vừa được phân tán vừa mang tính thống kê.

Unlike an Aloha Network, which is a star network with an outgoing broadcast channel and an incoming multi-access channel, an Ethernet supports many-to-many communication with a single broadcast multi-access channel.

Khi Ether phần lớn không được sử dụng, một trạm truyền các gói tin của nó tùy ý, các gói tin được nhận không có lỗi, và mọi thứ đều ổn. Khi nhiều trạm bắt đầu truyền, tốc độ nhiễu gói tin tăng lên. Các bộ điều khiển Ethernet trong mỗi trạm được xây dựng để điều chỉnh khoảng thời gian truyền lại trung bình tỷ lệ với tần suất va chạm; việc chia sẻ Ether giữa các truyền dẫn trạm-trạm cạnh tranh nhờ đó được giữ gần mức tối ưu [20, 21].

3.2 Control

Cần có một mức độ hợp tác giữa các trạm để chia sẻ Ether một cách công bằng. Trong các ứng dụng yêu cầu cao, một số trạm có thể hữu ích khi nhận ưu tiên truyền dẫn thông qua một số vi phạm có hệ thống đối với các quy tắc công bằng. Một trạm có thể chiếm đoạt Ether bằng cách không điều chỉnh khoảng thời gian truyền lại khi lưu lượng tăng hoặc bằng cách gửi các gói tin rất lớn. Cả hai cách làm này hiện đều bị phần mềm mức thấp trong mỗi trạm cấm.

Sharing of the Ether is controlled in such a way that it is not only possible but probable that two or more stations will attempt to transmit a packet at roughly the same time. Packets which overlap in time on the Ether are said to collide; they interfere so as to be unrecognizable by a receiver. A station recovers from a detected collision by abandoning the attempt and retransmitting the packet after some dynamically chosen random time period. Arbitration of conflicting transmission demands is both distributed and statistical.

3.3 Địa chỉ hóa

When the Ether is largely unused, a station transmits its packets at will, the packets are received without error, and all is well. As more stations begin to transmit, the rate of packet interference increases. Ethernet controllers in each station are built to adjust the mean retransmission interval in proportion to the frequency of collisions; sharing of the Ether among competing station-station transmissions is thereby kept near the optimum [20, 21].

Mỗi gói tin có một nguồn và một đích, cả hai đều được xác định trong phần đầu của gói tin. Một gói tin được đặt trên Ether cuối cùng sẽ lan truyền đến tất cả các trạm. Bất kỳ trạm nào cũng có thể sao chép một gói tin từ Ether vào bộ nhớ cục bộ của nó, nhưng thông thường chỉ một trạm đích chủ động khớp địa chỉ của nó trong phần đầu của gói tin mới thực hiện điều đó khi gói tin đi qua. Theo quy ước, địa chỉ đích bằng không là một ký tự đại diện và khớp với tất cả các địa chỉ; một gói tin có đích bằng không được gọi là một gói tin phát quảng bá.

A degree of cooperation among the stations is required to share the Ether equitably. In demanding applications certain stations might usefully take transmission priority through some systematic violation of equity rules. A station could usurp the Ether by not adjusting its retransmission interval with increasing traffic or by sending very large packets. Both practices are now prohibited by low-level software in each station.

3.4 Độ tin cậy
3.3 Addressing

Một Ethernet mang tính xác suất. Các gói tin có thể bị mất do nhiễu với các gói tin khác, nhiễu xung trên

Each packet has a source and destination, both of which are identified in the packet’s header. A packet placed on the Ether eventually propagates to all stations. Any station can copy a packet from the Ether into its local memory, but normally only an active destination station matching its address in the packet’s header will do so as the packet passes. By convention, a zero destination address is a wildcard and matches all addresses; a packet with a destination of zero is called a broadcast packet.

Communications of eth ACM July 1976 Volume 19

3.4 Reliability

Ether, một bộ thu không hoạt động tại đích đến dự kiến của một gói tin, hoặc sự loại bỏ có chủ đích. Các giao thức được sử dụng để giao tiếp thông qua một Ethernet phải giả định rằng các gói tin sẽ được nhận đúng tại các đích đến dự kiến chỉ với xác suất cao.

An Ethernet is probabilistic. Packets may be lost due to interference with other packets, impulse noise on the

Một Ethernet cố gắng hết sức để truyền các gói tin thành công, nhưng trách nhiệm của các tiến trình trong các trạm nguồn và trạm đích là thực hiện các biện pháp phòng ngừa cần thiết để bảo đảm giao tiếp đáng tin cậy với chất lượng mà chính chúng mong muốn [18, 21]. Nhận thức được chi phí và nguy cơ của việc hứa hẹn giao tiếp “không lỗi”, chúng tôi không bảo đảm việc phân phối đáng tin cậy của bất kỳ gói tin đơn lẻ nào để đạt được cả tính kinh tế trong truyền dẫn và độ tin cậy cao được tính trung bình trên nhiều gói tin [21]. Việc loại bỏ trách nhiệm về giao tiếp đáng tin cậy khỏi cơ chế vận chuyển gói tin cho phép chúng tôi điều chỉnh độ tin cậy theo ứng dụng và đặt việc khôi phục lỗi vào nơi nó mang lại hiệu quả lớn nhất. Chính sách này trở nên quan trọng hơn khi các Ethernet được kết nối với nhau trong một hệ thống phân cấp các mạng mà qua đó các gói tin phải di chuyển xa hơn và chịu nhiều rủi ro hơn.

Ether, an inactive receiver at a packet’s intended destination, or purposeful discard. Protocols used to communicate through an Ethernet must assume that packets will be received correctly at intended destinations only with high probability.

3.5 Cơ chế

An Ethernet gives its best efforts to transmit packets successfully, but it is the responsibility of processes in the source and destination stations to take the precautions necessary to assure reliable communication of the quality they themselves desire [18, 21]. Recognizing the costliness and dangers of promising “error-free” communication, we refrain from guaranteeing reliable delivery of any single packet to get both economy of transmission and high reliability averaged over many packets [21]. Removing the responsibility for reliable communication from the packet transport mechanism allows us to tailor reliability to the application and to place error recovery where it will do the most good. This policy becomes more important as Ethernets are interconnected in a hierarchy of networks through which packets must travel farther and suffer greater risks.

Một trạm kết nối với Ether bằng một tap và một transceiver. Một tap là một thiết bị dùng để kết nối vật lý với Ether đồng thời làm nhiễu các đặc tính truyền dẫn của nó ít nhất có thể. Việc thiết kế transceiver phải là một bài tập về tính đa nghi. Cần thực hiện các biện pháp phòng ngừa để những sự cố có khả năng xảy ra trong transceiver hoặc trạm không dẫn đến việc làm ô nhiễm Ether. Cụ thể, việc ngắt nguồn khỏi transceiver phải khiến nó ngắt kết nối khỏi Ether.

3.5 Mechanisms

Năm cơ chế được cung cấp trong Ethernet thử nghiệm của chúng tôi để giảm xác suất và chi phí mất một gói tin. Đó là (1) phát hiện sóng mang, (2) phát hiện nhiễu, (3) phát hiện lỗi gói tin, (4) lọc gói tin bị cắt ngắn, và (5) thực thi sự đồng thuận va chạm.

A station connects to the Ether with a tap and a transceiver. A tap is a device for physically connecting to the Ether while disturbing its transmission characteristics as little as possible. The design of the transceiver must be an exercise in paranoia. Precautions must be taken to insure that likely failures in the transceiver or station do not result in pollution of the Ether. In particular, removing power from the transceiver should cause it to disconnect from the Ether.

3.5.1 Phát hiện sóng mang.

Five mechanisms are provided in our experimental Ethernet for reducing the probability and cost of losing a packet. These are (1) carrier detection, (2) interference detection, (3) packet error detection, (4) truncated packet filtering, and (5) collision consensus enforcement.

Khi các bit của một gói tin được một trạm đặt lên Ether, chúng được mã hóa theo pha (giống như các bit trên băng từ), điều này bảo đảm rằng có ít nhất một chuyển tiếp trên Ether trong mỗi thời gian bit. Do đó, việc một gói tin đi qua Ether có thể được phát hiện bằng cách lắng nghe các chuyển tiếp của nó. Sử dụng phép tương tự với radio, chúng tôi nói về sự hiện diện của carrier khi một gói tin đi qua một transceiver. Vì một trạm có thể cảm nhận sóng mang của một gói tin đang đi qua, nó có thể trì hoãn việc gửi gói tin của chính mình cho đến khi gói tin được phát hiện đi qua an toàn. Aloha Network không có phát hiện sóng mang và do đó chịu tỷ lệ va chạm cao hơn đáng kể. Nếu không có phát hiện sóng mang, việc sử dụng Ether hiệu quả sẽ giảm khi độ dài gói tin tăng. Trong Section 6 dưới đây, chúng tôi chỉ ra rằng với phát hiện sóng mang, hiệu suất Ether tăng khi độ dài gói tin tăng.

3.5.1 Carrier detection. As a packet’s bits are placed on the Ether by a station, they are phase encoded (like bits on a magnetic tape), which guarantees that there is at least one transition on the Ether during each bit time. The passing of a packet on the Ether can therefore be detected by listening for its transitions. To use a radio analogy, we speak of the presence of carrier as a packet passes a transceiver. Because a station can sense the carrier of a passing packet, it can delay sending one of its own until the detected packet passes safely. The Aloha Network does not have carrier detection and consequently suffers a substantially higher collision rate. Without carrier detection, efficient use of the Ether would decrease with increasing packet length. In Section 6 below, we show that with carrier detection, Ether efficiency increases with increasing packet length.

Với phát hiện sóng mang, chúng tôi có thể triển khai deference: không trạm nào bắt đầu truyền khi đang nghe thấy sóng mang. Cùng với deference là acquisition: một khi việc truyền một gói tin đã diễn ra trong một thời gian bằng thời gian lan truyền đầu-cuối của Ether, tất cả các trạm đều đang nghe thấy sóng mang và đang trì hoãn; Ether đã được chiếm giữ và việc truyền sẽ hoàn tất mà không có va chạm gây nhiễu.

With carrier detection we are able to implement deference: no station will start transmitting while hearing carrier. With deference comes acquisition: once a packet transmission has been in progress for an Ether end-to-end propagation time, all stations are hearing carrier and are deferring; the Ether has been acquired and the transmission will complete without an interfering collision.

Với phát hiện sóng mang, các va chạm chỉ nên xảy ra khi hai hoặc nhiều trạm nhận thấy Ether im lặng và bắt đầu truyền đồng thời: trong phạm vi một thời gian lan truyền đầu-cuối của Ether. Điều này hầu như luôn xảy ra ngay sau một lần truyền gói tin trong đó hai hoặc nhiều trạm đã trì hoãn. Vì các trạm hiện không ngẫu nhiên hóa sau khi trì hoãn, khi quá trình truyền kết thúc, các trạm đang chờ cùng đổ vào, va chạm, ngẫu nhiên hóa và truyền lại.

With carrier detection, collisions should occur only when two or more stations find the Ether silent and begin transmitting simultaneously: within an Ether end-to-end propagation time. This will almost always happen immediately after a packet transmission during which two or more stations were deferring. Because stations do not now randomize after deferring, when the transmission terminates, the waiting stations pile on together, collide, randomize, and retransmit.

3.5.2 Phát hiện nhiễu.

3.5.2 Interference detection. Each transceiver has an interference detector. Interference is indicated when the transceiver notices a difference between the value of the bit it is receiving from the Ether and the value of the bit it is attempting to transmit.

Mỗi transceiver có một bộ phát hiện nhiễu. Nhiễu được biểu thị khi transceiver nhận thấy sự khác biệt giữa giá trị của bit mà nó đang nhận từ Ether và giá trị của bit mà nó đang cố gắng truyền.

Interference detection has three advantages. First, a station detecting a collision knows that its packet has been damaged. The packet can be scheduled for retransmission immediately, avoiding a long acknowledgment timeout. Second, interference periods on the Ether are limited to a maximum of one round trip time. Colliding packets in the Aloha Network run to completion, but the truncated packets resulting from Ethernet collisions waste only a small fraction of a packet time on the Ether. Third, the frequency of detected interference is used to estimate Ether traffic for adjusting retransmission intervals and optimizing channel efficiency.

Phát hiện nhiễu có ba ưu điểm. Thứ nhất, một trạm phát hiện va chạm biết rằng gói tin của nó đã bị hỏng. Gói tin có thể được lập lịch để truyền lại ngay lập tức, tránh thời gian chờ xác nhận kéo dài. Thứ hai, các khoảng thời gian nhiễu trên Ether bị giới hạn tối đa bằng một thời gian khứ hồi. Các gói tin va chạm trong Aloha Network chạy đến khi hoàn tất, nhưng các gói tin bị cắt ngắn do va chạm Ethernet chỉ lãng phí một phần nhỏ thời gian của một gói tin trên Ether. Thứ ba, tần suất nhiễu được phát hiện được sử dụng để ước lượng lưu lượng Ether nhằm điều chỉnh các khoảng thời gian truyền lại và tối ưu hóa hiệu suất kênh.

3.5.3 Packet error detection. As a packet is placed on the Ether, a checksum is computed and appended. As the packet is read from the Ether, the checksum is recomputed. Packets which do not carry a consistent checksum are discarded. In this way transmission errors, impulse noise errors, and errors due to undetected interference are caught at a packet’s destination.

3.5.3 Phát hiện lỗi gói tin.

3.5.4 Truncated packet filtering. Interference detection and deference cause most collisions to result in truncated packets of only a few bits; colliding stations detect interference and abort transmission within an Ether round trip time. To reduce the processing load that the rejection of such obviously damaged packets would place on listening station software, truncated packets are filtered out in hardware.

Khi một gói tin được đặt lên Ether, một checksum được tính toán và nối thêm. Khi gói tin được đọc từ Ether, checksum được tính toán lại. Các gói tin không mang một checksum nhất quán sẽ bị loại bỏ. Theo cách này, các lỗi truyền dẫn, lỗi do nhiễu xung, và các lỗi do nhiễu không được phát hiện đều được bắt tại đích đến của gói tin.

3.5.5 Collision consensus enforcement. When a station determines that its transmission is experiencing interference, it momentarily jams the Ether to insure that all other participants in the collision will detect interference and, because of deference, will be forced to abort. Without this collision consensus enforcement mechanism, it is possible that the transmitting station which would otherwise be the last to detect a collision might not do so as the other interfering transmissions successively abort and stop interfering. Although the packet may look good to that last transmitter, different path lengths between the colliding transmitters and the intended receiver will cause the packet to arrive damaged.

3.5.4 Lọc gói tin bị cắt ngắn.

Nothing here.

Phát hiện nhiễu và trì hoãn khiến hầu hết các va chạm dẫn đến các truncated packets chỉ có vài bit; các trạm va chạm phát hiện nhiễu và hủy bỏ việc truyền trong thời gian khứ hồi của Ether. Để giảm tải xử lý mà việc loại bỏ các gói tin rõ ràng đã bị hỏng như vậy gây ra cho phần mềm của các trạm lắng nghe, các gói tin bị cắt ngắn được lọc bỏ trong phần cứng.

Nothing here.

3.5.5 Thực thi đồng thuận va chạm.

Nothing here.

Khi một trạm xác định rằng việc truyền của nó đang chịu nhiễu, nó tạm thời gây nhiễu Ether để bảo đảm rằng tất cả các bên tham gia khác trong vụ va chạm sẽ phát hiện nhiễu, và do sự nhường quyền, sẽ bị buộc phải hủy bỏ. Nếu không có cơ chế thực thi đồng thuận va chạm này, có khả năng trạm truyền mà trong điều kiện khác sẽ là trạm cuối cùng phát hiện va chạm có thể không phát hiện được điều đó khi các lần truyền gây nhiễu khác lần lượt hủy bỏ và ngừng gây nhiễu. Mặc dù gói tin có thể trông hợp lệ đối với bộ phát cuối cùng đó, các độ dài đường truyền khác nhau

Nothing here.

Communications của ACM

Nothing here.

Tháng 7 năm 1976 Tập 19 giữa các bộ phát đang va chạm và bộ nhận đích sẽ khiến gói tin đến nơi bị hỏng.

Nothing here.

4 Triển khai

4 Implementation

Các lựa chọn của chúng tôi về 1 kilometer, 3 megabits per second và 256 trạm cho các tham số của một Ethernet thử nghiệm dựa trên các đặc điểm của môi trường truyền thông máy tính phân tán cục bộ và đánh giá của chúng tôi về những gì có thể đạt được ở mức biên; chắc chắn chúng không phải là những hạn chế cứng thiết yếu đối với khái niệm Ethernet.

Our choices of 1 kilometer, 3 megabits per second, and 256 stations for the parameters of an experimental Ethernet were based on characteristics of the locally distributed computer communication environment and our assessments of what would be marginally achievable; they were certainly not hard restrictions essential to the Ethernet concept.

Chúng tôi kỳ vọng rằng kích thước tối đa hợp lý của mạng sẽ vào khoảng 1 kilometer cáp. Chúng tôi sử dụng con số làm việc này để lựa chọn giữa các Ether có mức suy hao tín hiệu khác nhau và để thiết kế các bộ thu phát với công suất và độ nhạy thích hợp.

We expect that a reasonable maximum network size would be on the order of 1 kilometer of cable. We used this working number to choose among Ethers of varying signal attenuation and to design transceivers with appropriate power and sensitivity.

Trạm chiếm ưu thế trên Ethernet thử nghiệm của chúng tôi là một minicomputer, trong đó 3 megabits per second là tốc độ truyền dữ liệu thuận tiện. Bằng cách giữ tốc độ cực đại thấp hơn nhiều so với tốc độ của đường truyền của máy tính tới bộ nhớ chính, chúng tôi giảm nhu cầu về bộ đệm gói tin chuyên dụng đắt tiền trong các giao diện Ethernet của mình. Bằng cách giữ tốc độ cực đại cao nhất trong mức thuận tiện, chúng tôi cung cấp khả năng hỗ trợ số lượng trạm lớn hơn và các ứng dụng truyền thông đa xử lý tham vọng hơn.

The dominant station on our experimental Ethernet is a minicomputer for which 3 megabits per second is a convenient data transfer rate. By keeping the peak rate well below that of the computer’s path to main memory, we reduce the need for expensive special-purpose packet buffering in our Ethernet interfaces. By keeping the peak rate as high as is convenient, we provide for larger numbers of stations and more ambitious multiprocessing communications applications.

Để đẩy nhanh việc xử lý gói tin mức thấp giữa 256 trạm, chúng tôi phân bổ byte 8-bit đầu tiên của gói tin cho trường địa chỉ đích và byte thứ hai cho trường địa chỉ nguồn (xem Hình 2). 256 là một con số đủ nhỏ để cho phép mỗi trạm nhận được phần băng thông khả dụng thích hợp và tiến gần tới giới hạn mà chúng tôi có thể đạt được với các kỹ thuật hiện tại để đấu nối vào cáp. 256 chỉ là một con số thuận tiện cho mức thấp nhất của giao thức; các mức cao hơn có thể hỗ trợ không gian địa chỉ mở rộng với các trường bổ sung bên trong gói tin và phần mềm để diễn giải chúng.

To expedite low-level packet handling among 256 stations, we allocate the first 8-bit byte of the packet to be the destination address field and the second byte to be the source address field (see Figure 2). 256 is a number small enough to allow each station to get an adequate share of the available bandwidth and approaches the limit of what we can achieve with current techniques for tapping cables. 256 is only a convenient number for the lowest level of protocol; higher levels can accommodate extended address spaces with additional fields inside the packet and software to interpret them.

Triển khai Ethernet thử nghiệm của chúng tôi có bốn phần chính: Ether, các bộ thu phát, các giao diện và các bộ điều khiển (xem Hình 1).

Our experimental Ethernet implementation has four major parts: the Ether, transceivers, interfaces, and controllers (see Figure 1).

4.1 Ether
4.1 Ether

Chúng tôi chọn triển khai Ether thử nghiệm bằng cách sử dụng cáp đồng trục suy hao thấp với các đầu nối và điểm đấu nối CATV có sẵn trên thị trường. Có thể trộn các Ether trên một Ethernet duy nhất; chúng tôi sử dụng cáp đồng trục đường kính nhỏ hơn để kết nối thuận tiện trong các cụm trạm và cáp đồng trục đường kính lớn hơn cho các đoạn chạy suy hao thấp giữa các cụm. Chi phí của Ether cáp đồng trục là không đáng kể so với chi phí của các hệ thống tính toán phân tán được Ethernet hỗ trợ.

We chose to implement our experimental Ether using low-loss coaxial cable with off-the-shelf CATV taps and connectors. It is possible to mix Ethers on a single Ethernet; we use a smaller-diameter coax for convenient connection within station clusters and a larger-diameter coax for low-loss runs between clusters. The cost of coaxial cable Ether is insignificant relative to the cost of the distributed computing systems supported by Ethernet.

4.2 Bộ thu phát
4.2 Transceivers

Các bộ thu phát thử nghiệm của chúng tôi có thể điều khiển một kilometer Ether cáp đồng trục được đấu nối bởi 256 trạm truyền ở tốc độ 3 megabits per second. Các bộ thu phát có thể chịu được (tức là hoạt động sau khi) việc nối tắt trực tiếp kéo dài, kết cuối Ether không đúng và việc điều khiển đồng thời bởi tất cả 256 trạm; chúng có thể chịu đựng (tức là hoạt động trong khi) các sai biệt điện thế đất và nhiễu điện hằng ngày, từ máy đánh chữ hoặc máy khoan điện, gặp phải khi các trạm cách nhau tới một kilometer.

Our experimental transceivers can drive a kilometer of coaxial cable Ether tapped by 256 stations transmitting at 3 megabits per second. The transceivers can endure (i.e. work after) sustained direct shorting, improper termination of the Ether, and simultaneous drive by all 256 stations; they can tolerate (i.e. work during) ground differentials and everyday electrical noise, from typewriters or electric drills, encountered when stations are separated by as much as a kilometer.

Một bộ thu phát Ethernet gắn trực tiếp vào Ether chạy qua trên trần hoặc dưới sàn. Nó được cấp nguồn và điều khiển thông qua năm cặp dây xoắn trong một cáp giao diện mang dữ liệu truyền, dữ liệu nhận, phát hiện nhiễu và điện áp nguồn. Khi không được cấp nguồn, bộ thu phát tự ngắt kết nối điện khỏi Ether. Đây là nơi cuộc đấu tranh của chúng tôi vì độ tin cậy được quyết định thắng hay thua; một bộ thu phát hỏng có thể, nhưng không nên, làm sập toàn bộ Ethernet. Một mạch bộ định thời watchdog trong mỗi bộ thu phát cố gắng ngăn ngừa việc làm ô nhiễm Ether bằng cách tắt tầng đầu ra nếu nó hoạt động đáng ngờ. Để đơn giản hóa bộ thu phát, chúng tôi sử dụng dải tần cơ sở của Ether, nhưng một Ethernet có thể được xây dựng để sử dụng bất kỳ dải tần có kích thước phù hợp nào của một Ether ghép kênh phân chia theo tần số.

An Ethernet transceiver attaches directly to the Ether which passes by in the ceiling or under the floor. It is powered and controlled through five twisted pairs in an interface cable carrying transmit data, receive data, interference detect, and power supply voltages. When unpowered, the transceiver disconnects itself electrically from the Ether. Here is where our fight for reliability is won or lost; a broken transceiver can, but should not, bring down an entire Ethernet. A watchdog timer circuit in each transceiver attempts to prevent pollution of the Ether by shutting down the output stage if it acts suspiciously. For transceiver simplicity we use the Ether’s base frequency band, but an Ethernet could be built to use any suitably sized band of a frequency division multiplexed Ether.

Mặc dù các bộ thu phát thử nghiệm của chúng tôi rất đơn giản và chỉ có thể chịu được suy hao tín hiệu giới hạn, chúng đã chứng tỏ là hoàn toàn đủ và đáng tin cậy. Một thiết kế bộ thu phát tinh vi hơn có thể cho phép phân nhánh thụ động của Ether và khoảng cách giữa các trạm rộng hơn.

Even though our experimental transceivers are very simple and can tolerate only limited signal attenuation, they have proven quite adequate and reliable. A more sophisticated transceiver design might permit passive branching of the Ether and wider station separation.

4.3 Giao diện
4.3 Interface

Một giao diện Ethernet tuần tự hóa và giải tuần tự hóa dữ liệu song song được sử dụng bởi trạm của nó. Có một số loại trạm khác nhau trên Ethernet của chúng tôi; một giao diện phải được xây dựng cho từng loại.

An Ethernet interface serializes and deserializes the parallel data used by its station. There are a number of different stations on our Ethernet; an interface must be built for each kind.

Mỗi giao diện được trang bị phần cứng cần thiết để tính toán một tổng kiểm tra dư vòng 16-bit (CRC) trên dữ liệu nối tiếp khi nó được truyền và nhận. Tổng kiểm tra này chỉ bảo vệ chống lại các lỗi trong Ether và cụ thể không phải chống lại các lỗi trong các phần song song của phần cứng giao diện hoặc trạm. Các tổng kiểm tra bằng phần mềm mức cao hơn được khuyến nghị cho các ứng dụng yêu cầu mức độ tin cậy cao hơn.

Each interface is equipped with the hardware necessary to compute a 16-bit cyclic redundancy checksum (CRC) on serial data as it is transmitted and received. This checksum protects only against errors in the Ether and specifically not against errors in the parallel portions of the interface hardware or station. Higher-level software checksums are recommended for applications in which a higher degree of reliability is required.

Một giao diện truyền sử dụng địa chỉ bộ đệm gói tin và số lượng từ để tuần tự hóa và mã hóa pha một số lượng thay đổi các từ 16-bit được lấy từ bộ nhớ của trạm và truyền tới bộ thu phát, với một bit bắt đầu (gọi là SYNC trong Hình 2) đứng trước và CRC đứng sau. Một giao diện nhận sử dụng sự xuất hiện của sóng mang để phát hiện sự bắt đầu của gói tin và sử dụng bit SYNC để thu nhận pha bit. Khi sóng mang còn bật, giao diện giải mã và giải tuần tự hóa luồng bit đến, đặt các từ 16-bit vào một bộ đệm gói tin trong bộ nhớ chính của trạm. Khi sóng mang biến mất, giao diện kiểm tra rằng một số nguyên các từ 16-bit đã được nhận và CRC là đúng. Từ cuối cùng được nhận được giả định là CRC và không được sao chép vào bộ đệm gói tin.

A transmitting interface uses a packet buffer address and word count to serialize and phase encode a variable number of 16-bit words which are taken from the station’s memory and passed to the transceiver, preceded by a start bit (called SYNC in Figure 2) and followed by the CRC. A receiving interface uses the appearance of carrier to detect the start of a packet and uses the SYNC bit to acquire bit phase. As long as carrier stays on, the interface decodes and deserializes the incoming bit stream depositing 16-bit words in a packet buffer in the station’s main memory. When carrier goes away, the interface checks that an integral number of 16-bit words has been received and that the CRC is correct. The last word received is assumed to be the CRC and is not copied into the packet buffer.

Các giao diện này thông thường bao gồm phần cứng chỉ chấp nhận những gói tin có địa chỉ thích hợp trong phần đầu của chúng. Bộ lọc địa chỉ bằng phần cứng giúp một trạm tránh việc xử lý gói tin bằng phần mềm nặng nề khi

These interfaces ordinarily include hardware for accepting only those packets with appropriate addresses in their headers. Hardware address filtering helps a station avoid burdensome software packet processing when

Communications of the ACM July 1976 Volume 19 Ether rất bận rộn với việc mang lưu lượng dành cho các trạm khác.

Fig. 2. Ethernet packet layout.

Fig. 2. Bố cục gói tin Ethernet.

SYNDEST ADDRESSSOURCE ADDRESSDATACHECKSUM
8 BITS8 BITS~4000 BITS16 BITS
4.4 Bộ điều khiển

the Ether is very busy carrying traffic intended for other stations.

Bộ điều khiển Ethernet là phần sụn hoặc phần mềm mức thấp dành riêng cho trạm để đưa các gói tin vào và ra khỏi Ether. Khi xảy ra va chạm được phát hiện tại nguồn, trách nhiệm của bộ điều khiển nguồn là tạo ra một khoảng thời gian truyền lại ngẫu nhiên mới dựa trên số lần va chạm đã được cập nhật. Chúng tôi đã nghiên cứu một số thuật toán để điều khiển tốc độ truyền lại trong các trạm nhằm duy trì hiệu suất Ether [20, 22]. Các thuật toán thực tế nhất trong số này ước lượng tải lưu lượng bằng cách sử dụng lịch sử va chạm gần đây.

4.4 Controller

Các khoảng thời gian truyền lại là bội số của một slot, thời gian tối đa giữa lúc bắt đầu một lần truyền và lúc phát hiện một va chạm, tức một độ trễ khứ hồi đầu cuối đến đầu cuối. Một bộ điều khiển Ethernet bắt đầu truyền mỗi gói tin mới với khoảng thời gian truyền lại trung bình bằng một slot. Mỗi lần một nỗ lực truyền kết thúc bằng va chạm, bộ điều khiển trì hoãn trong một khoảng thời gian có độ dài ngẫu nhiên với giá trị trung bình gấp đôi khoảng thời gian trước đó, nhường cho bất kỳ gói tin nào đang đi qua, rồi thử truyền lại. Heuristic này xấp xỉ một thuật toán mà chúng tôi gọi là Binary Exponential Backoff (xem Hình 3) [22].

An Ethernet controller is the station-specific low-level firmware or software for getting packets onto and out of the Ether. When a source-detected collision occurs, it is the source controller’s responsibility to generate a new random retransmission interval based on the updated collision count. We have studied a number of algorithms for controlling retransmission rates in stations to maintain Ether efficiency [20, 22]. The most practical of these algorithms estimate traffic load using recent collision history.

Khi mạng không có tải và các va chạm hiếm khi xảy ra, giá trị trung bình hiếm khi rời khỏi một và việc truyền lại diễn ra nhanh chóng. Khi tải lưu lượng tăng lên, nhiều va chạm hơn xảy ra, một lượng lớn gói tin chờ tích tụ tại các trạm, các khoảng thời gian truyền lại tăng lên, và lưu lượng truyền lại giảm tốc để duy trì hiệu suất kênh.

Retransmission intervals are multiples of a slot, the maximum time between starting a transmission and detecting a collision, one end-to-end round trip delay. An Ethernet controller begins transmission of each new packet with a mean retransmission interval of one slot. Each time a transmission attempt ends in collision, the controller delays for an interval of random length with a mean twice that of the previous interval, defers to any passing packet, and then attempts retransmission. This heuristic approximates an algorithm we have called Binary Exponential Backoff (see Figure 3) [22].

Nothing here.

When the network is unloaded and collisions are rare, the mean seldom departs from one and retransmissions are prompt. As the traffic load increases, more collisions are experienced, a backlog of packets builds up in the stations, retransmission intervals increase, and retransmission traffic backs off to sustain channel efficiency.

5 Tăng trưởng

5 Growth

5.1 Phạm vi tín hiệu
5.1 Signal Cover

Có thể mở rộng một Ethernet đến một mức nhất định bằng cách thêm các bộ thu phát và Ether. Tại một thời điểm nào đó, các bộ thu phát và Ether sẽ không thể mang các tín hiệu cần thiết. Phạm vi tín hiệu có thể được mở rộng bằng một bộ lặp gói tin đơn giản không có bộ đệm. Trong Ethernet thử nghiệm của chúng tôi, nơi do sự đơn giản của bộ thu phát mà Ether không thể được phân nhánh một cách thụ động, một bộ lặp đơn giản có thể nối bất kỳ số lượng phân đoạn Ether nào để làm phong phú cấu trúc liên kết trong khi mở rộng phạm vi tín hiệu.

One can expand an Ethernet just so far by adding transceivers and Ether. At some point, the transceivers and Ether will be unable to carry the required signals. The signal cover can be extended with a simple unbuffered packet repeater. In our experimental Ethernet, where because of transceiver simplicity the Ether cannot be branched passively, a simple repeater may join any number of Ether segments to enrich the topology while extending the signal cover.

Chúng tôi vận hành một bộ lặp gói tin hai phân đoạn thử nghiệm, nhưng hy vọng tránh phụ thuộc vào chúng. Trong việc phân nhánh Ether và mở rộng phạm vi tín hiệu của nó, có sự đánh đổi giữa việc sử dụng các bộ thu phát tinh vi và sử dụng các bộ lặp. Với công suất và độ nhạy tăng lên, các bộ thu phát trở nên đắt hơn và kém tin cậy hơn. Việc đưa các bộ lặp vào một Ethernet làm cho Ether kết nối trung tâm trở nên chủ động. Sự cố của một bộ thu phát sẽ cắt đứt các liên lạc của chủ sở hữu nó; sự cố của một bộ lặp sẽ phân vùng Ether, cắt đứt nhiều liên lạc.

We operate an experimental two-segment packet repeater, but hope to avoid relying on them. In branching the Ether and extending its signal cover, there is a trade-off between using sophisticated transceivers and using repeaters. With increased power and sensitivity, transceivers become more expensive and less reliable. The introduction of repeaters into an Ethernet makes the centrally interconnecting Ether active. The failure of a transceiver will sever the communications of its owner; the failure of a repeater partitions the Ether severing many communications.

5.2 Phạm vi lưu lượng
5.2 Traffic Cover

Có thể mở rộng một Ethernet đến một mức nhất định bằng cách thêm Ether và các bộ lặp gói tin. Tại một thời điểm nào đó, Ether sẽ bận đến mức các trạm bổ sung chỉ còn chia nhỏ hơn nữa băng thông vốn đã không đủ. Phạm vi lưu lượng có thể được mở rộng bằng một bộ lặp lọc lưu lượng không có bộ đệm hoặc bộ lọc gói tin, bộ này chỉ chuyển các gói tin từ một phân đoạn Ether sang phân đoạn Ether khác nếu trạm đích nằm trên phân đoạn mới. Một bộ lọc gói tin cũng mở rộng phạm vi tín hiệu.

One can expand an Ethernet just so far by adding Ether and packet repeaters. At some point the Ether will be so busy that additional stations will just divide more finely the already inadequate bandwidth. The traffic cover can be extended with an unbuffered traffic-filtering repeater or packet filter, which passes packets from one Ether segment to another only if the destination station is located on the new segment. A packet filter also extends the signal cover.

5.3 Phạm vi địa chỉ
5.3 Address Cover

Có thể mở rộng một Ethernet đến một mức nhất định bằng cách thêm Ether, các bộ lặp và các bộ lọc lưu lượng. Tại một thời điểm nào đó sẽ có quá nhiều trạm để được định địa chỉ bằng các địa chỉ 8-bit của Ethernet. Phạm vi địa chỉ có thể được mở rộng bằng các cổng gói tin và các quy ước định địa chỉ phần mềm mà chúng triển khai [7]. Địa chỉ có thể được mở rộng theo hai hướng: xuống vào trong trạm bằng cách thêm các trường để xác định các cổng đích hoặc các tiến trình bên trong một trạm, và lên vào trong liên mạng bằng cách thêm các trường để xác định các trạm đích trên các mạng từ xa. Một cổng cũng mở rộng các phạm vi lưu lượng và tín hiệu.

One can expand an Ethernet just so far by adding Ether, repeaters, and traffic filters. At some point there will be too many stations to be addressed with the Ethernet’s 8-bit addresses. The address cover can be extended with packet gateways and the software addressing conventions they implement [7]. Addresses can be expanded in two directions: down into the station by adding fields to identify destination ports or processes within a station, and up into the internetwork by adding fields to identify destination stations on remote networks. A gateway also extends the traffic and signal covers.

Chỉ có thể có một bộ lặp hoặc bộ lọc gói tin kết nối hai phân đoạn Ether; một gói tin được lặp lại vào một phân đoạn bởi nhiều bộ lặp sẽ gây nhiễu với chính nó. Tuy nhiên, không có giới hạn về số lượng cổng kết nối hai phân đoạn; một cổng chỉ lặp lại các gói tin được định địa chỉ cho chính nó như một trung gian. Sự cố của bộ lặp duy nhất kết nối hai phân đoạn sẽ phân vùng mạng; sự cố của một cổng không nhất thiết phải phân vùng mạng nếu có các đường đi qua các cổng khác giữa các phân đoạn.

There can be only one repeater or packet filter connecting two Ether segments; a packet repeated onto a segment by multiple repeaters would interfere with itself. However, there is no limit to the number of gateways connecting two segments; a gateway only repeats packets addressed to itself as an intermediary. Failure of the single repeater connecting two segments partitions the network; failure of a gateway need not partition the net if there are paths through other gateways between the segments.

6 Hiệu năng

6 Performance

Chúng tôi trình bày ở đây một tập hợp công thức đơn giản để đặc trưng cho hiệu năng được mong đợi của một Ethernet khi chịu tải lớn. Các phân tích phức tạp hơn và một số mô phỏng chi tiết đã được thực hiện, nhưng mô hình đơn giản sau đây đã chứng tỏ rất hữu ích trong việc tìm hiểu sơ đồ tranh chấp phân tán của Ethernet, ngay cả khi nó được tải vượt quá mức dự kiến [1, 20, 21, 22, 23, 27].

We present here a simple set of formulas with which to characterize the performance expected of an Ethernet when it is heavily loaded. More elaborate analyses and several detailed simulations have been done, but the following simple model has proven very useful in understanding the Ethernet’s distributed contention scheme, even when it is loaded beyond expectations [1, 20, 21, 22, 23, 27].

Chúng tôi xây dựng một mô hình đơn giản về hiệu năng của một Ethernet đang chịu tải bằng cách xem xét các khoảng thời gian Ether xen kẽ. Khoảng đầu tiên, được gọi là một khoảng truyền, là khoảng

We develop a simple model of the performance of a loaded Ethernet by examining alternating Ether time periods. The first, called a transmission interval, is that during which the Ether has been acquired for a successful packet transmission. The second, called a contention interval, is that composed of the retransmission slots of Section 4.4, during which stations attempt to acquire control of the Ether. Because the model’s Ethernets are loaded and because stations defer to passing packets before starting transmission, the slots are synchronized by the tail of the preceding acquisition interval. A slot will be empty when no station chooses to attempt transmission in it and it will contain a collision if more than one station attempts to transmit. When a slot contains only one attempted transmission, then the Ether has been acquired for the duration of a packet, the contention interval ends, and a transmission interval begins.

Truyền thông của ACM

Let PP be the number of bits in an Ethernet packet. Let CC be the peak capacity in bits per second, carried on the Ether. Let TT be the time in seconds of a slot, the number of seconds it takes to detect a collision after starting a transmission. Let us assume that there are QQ stations continuously queued to transmit a packet; either the acquiring station has a new packet immediately after a successful acquisition or another station comes ready. Note that QQ also happens to give the total offered load on the network which for this analysis is always 1 or greater. We assume that a queued station attempts to transmit in the current slot with probability 1/Q1/Q, or delays with probability 1−(1/Q)1 - (1/Q); this is known to be the optimum statistical decision rule, approximated in Ethernet stations by means of our load-estimating retransmission control algorithms [20, 21].

Tháng 7 năm 1976 Tập 19 trong đó Ether đã được chiếm dụng để truyền thành công một gói tin. Khoảng thứ hai, được gọi là một khoảng tranh chấp, là khoảng được tạo thành từ các khe truyền lại của Section 4.4, trong đó các trạm cố gắng giành quyền điều khiển Ether. Vì các Ethernet trong mô hình chịu tải và vì các trạm trì hoãn trước các gói tin đang đi qua trước khi bắt đầu truyền, các khe được đồng bộ hóa bởi phần cuối của khoảng giành quyền trước đó. Một khe sẽ trống khi không có trạm nào chọn thử truyền trong đó và nó sẽ chứa một va chạm nếu có nhiều hơn một trạm cố gắng truyền. Khi một khe chỉ chứa một lần thử truyền duy nhất, Ether đã được chiếm dụng trong thời gian của một gói tin, khoảng tranh chấp kết thúc và một khoảng truyền bắt đầu.

6.1 Acquisition Probability

Gọi PP là số bit trong một gói tin Ethernet. Gọi CC là dung lượng cực đại tính bằng bit trên giây, được mang trên Ether. Gọi TT là thời gian tính bằng giây của một khe, là số giây cần thiết để phát hiện một va chạm sau khi bắt đầu một lần truyền. Giả sử rằng có QQ trạm liên tục xếp hàng để truyền một gói tin; hoặc trạm giành quyền có một gói tin mới ngay sau khi giành quyền thành công hoặc một trạm khác trở nên sẵn sàng. Lưu ý rằng QQ cũng đồng thời cho tải được cung cấp tổng cộng trên mạng, trong phân tích này luôn là 1 hoặc lớn hơn. Chúng tôi giả sử rằng một trạm đang xếp hàng thử truyền trong khe hiện tại với xác suất 1/Q1/Q, hoặc trì hoãn với xác suất 1−(1/Q)1-(1/Q); điều này được biết đến

We now compute AA, the probability that exactly one station attempts a transmission in a slot and therefore acquires the Ether. AA is Q∗(1/Q)∗((1−(1/Q))∗∗(Q−1))Q * (1/Q) * ((1 - (1/Q))** (Q - 1)); there are QQ ways in which one station can choose to transmit (with probability 1/Q1/Q) while Q−1Q - 1 stations choose to wait (with probability 1−(1/Q)1 - (1/Q)). Simplifying,

Figure 3
Thuật toán điều khiển va chạm.
A=(1−(1/Q))(Q−1).A = (1 - (1/Q))^{(Q-1)}.
6.1 Xác suất giành quyền
6.2 Waiting Time

Bây giờ chúng tôi tính AA, xác suất chính xác một trạm thử truyền trong một khe và do đó giành quyền trên Ether. AA là Q∗(1/Q)∗((1−(1/Q))∗∗(Q−1))Q*(1/Q)*((1-(1/Q))**(Q-1)); có QQ cách để một trạm chọn truyền (với xác suất (1/Q)(1/Q)) trong khi Q−1Q-1 trạm chọn chờ (với xác suất 1−(1/Q)1-(1/Q)). Rút gọn,

We now compute WW, the mean number of slots of waiting in a contention interval before a successful acquisition of the Ether by a station’s transmission. The probability of waiting no time at all is just AA, the probability that one and only one station chooses to transmit in the first slot following a transmission. The probability of waiting 1 slot is A∗(1−A)A * (1 - A); the probability of waiting ii slots is A∗((1−A)∗∗i)A * ((1 - A)**i). The mean of this geometric distribution is

A=(1−(1/Q))(Q−1).A=(1-(1/Q))^{(Q-1)}.
W=(1−A)/A.W = (1 - A)/A.
6.2 Thời gian chờ
6.3 Efficiency

Bây giờ chúng tôi tính WW, số khe chờ trung bình trong một khoảng tranh chấp trước khi một lần truyền của một trạm giành quyền trên Ether thành công. Xác suất không chờ chút thời gian nào chính là AA, xác suất một và chỉ một trạm chọn truyền trong khe đầu tiên sau một lần truyền. Xác suất chờ 1 khe là A∗(1−A)A*(1-A); xác suất chờ ii khe là A∗((1−A)∗∗i)A*((1-A)**i). Giá trị trung bình của phân phối hình học này là

We now compute EE, that fraction of time the Ether is carrying good packets, the efficiency. The Ether’s time is divided between transmission intervals and contention intervals. A packet transmission takes P/CP/C seconds. The mean time to acquisition is W∗TW*T. Therefore, by our simple model,

W=(1−A)/A.W=(1-A)/A.
E=(P/C)/((P/C)+(W∗T)).E = (P/C)/((P/C) + (W*T)).
6.3 Hiệu suất

Table I presents representative performance figures (i.e. EE) for our experimental Ethernet with the indicated packet sizes and number of continuously queued stations. The efficiency figures given do not account for inevitable reductions due to headers and control packets nor for losses due to imprecise control of the retransmission parameter 1/Q1/Q; the former is straightforwardly protocol-dependent and the latter requires analysis beyond the scope of this paper. Again, we feel that all of the Ethernets in the table are overloaded; normally loaded Ethernets will usually have a QQ much less than 1 and exhibit behavior not covered by this model.

Bây giờ chúng tôi tính EE, phần thời gian mà Ether đang mang các gói tin hữu ích, tức hiệu suất. Thời gian của Ether được chia giữa các khoảng truyền và các khoảng tranh chấp. Một lần truyền gói tin mất P/CP/C giây. Thời gian trung bình để giành quyền là W∗TW*T. Do đó, theo mô hình đơn giản của chúng tôi,

For our calculations we use a CC of 3 megabits per second and a TT of 16 microseconds. The slot duration TT must be long enough to allow a collision to be detected or at least twice the Ether’s round trip time. We limit in software the maximum length of our packets to be near 4000 bits to keep the latency of network access down and to permit efficient use of station packet buffer storage.

E=(P/C)/((P/C)+(W∗T)).E=(P/C)/((P/C)+(W*T)).

For packets whose size is above 4000 bits, the efficiency of our experimental Ethernet stays well above 95 percent. For packets with a size approximating that of a slot, Ethernet efficiency approaches 1/e1/e, the asymptotic efficiency of a slotted Aloha network [27].

Bảng I trình bày các số liệu hiệu năng tiêu biểu (tức là EE) cho Ethernet thử nghiệm của chúng tôi với các kích thước gói tin và số lượng trạm xếp hàng liên tục được chỉ ra. Các số liệu hiệu suất được đưa ra không tính đến các suy giảm không thể tránh khỏi do các phần đầu và các gói điều khiển cũng như các mất mát do việc điều khiển không chính xác tham số truyền lại 1/Q1/Q; phần trước phụ thuộc trực tiếp vào giao thức và phần sau cần phân tích vượt quá phạm vi của bài báo này. Một lần nữa, chúng tôi cho rằng tất cả các Ethernet trong bảng đều bị quá tải; các Ethernet chịu tải bình thường thường sẽ có QQ nhỏ hơn nhiều so với 1 và thể hiện hành vi không được mô hình này bao quát.

Nothing here.

Trong các phép tính của chúng tôi, chúng tôi sử dụng CC bằng 3 megabit trên giây và TT bằng 16 microgiây. Thời lượng khe TT phải đủ dài để cho phép phát hiện một va chạm hoặc ít nhất bằng hai lần thời gian khứ hồi của Ether. Chúng tôi giới hạn bằng phần mềm độ dài tối đa của các gói tin của mình gần 4000 bit để giữ độ trễ của truy cập mạng thấp và cho phép sử dụng hiệu quả bộ lưu trữ bộ đệm gói tin của trạm.

Nothing here.

Đối với các gói tin có kích thước lớn hơn 4000 bit, hiệu suất của Ethernet thử nghiệm của chúng tôi vẫn cao hơn nhiều so với 95

Nothing here.

Truyền thông của ACM

Nothing here.

Tháng 7 năm 1976 Tập 19 phần trăm. Đối với các gói tin có kích thước xấp xỉ kích thước của một khe, hiệu suất Ethernet tiến gần đến 1/e1/e, hiệu suất tiệm cận của một mạng Aloha phân khe [27].

Nothing here.

7 Giao thức

7 Protocol

Có nhiều điều hơn trong việc xây dựng một hệ thống truyền thông gói tin khả dụng so với việc chỉ cung cấp các cơ chế vận chuyển gói tin. Các phương pháp sửa lỗi, điều khiển luồng, đặt tên tiến trình, bảo mật và kế toán cũng phải được cung cấp thông qua các giao thức cấp cao hơn được triển khai trên giao thức điều khiển Ether được mô tả trong Các mục 3 và 4 ở trên. [7], [10], [12], [21], [28], [34]. Điều khiển Ether bao gồm đóng khung gói tin, phát hiện lỗi, định địa chỉ và điều khiển đa truy cập; giống như các thủ tục điều khiển đường truyền khác, Ethernet được sử dụng để hỗ trợ nhiều kiến trúc mạng và đa bộ xử lý [30, 31].

There is more to the construction of a viable packet communication system than simply providing the mechanisms for packet transport. Methods for error correction, flow control, process naming, security, and accounting must also be provided through higher-level protocols implemented on top of the Ether control protocol described in Sections 3 and 4 above. [7], [10], [12], [21], [28], [34]. Ether control includes packet framing, error detection, addressing and multi-access control; like other line control procedures, Ethernet is used to support numerous network and multiprocessor architectures [30, 31].

Sau đây là mô tả ngắn gọn về một giao thức gói tin điều khiển lỗi đơn giản. EFTP (Ethernet File Transfer Protocol) đáng quan tâm vừa vì nó tương đối dễ hiểu và triển khai đúng, vừa vì nó đã tận tâm truyền nhiều file có giá trị trong quá trình phát triển các giao thức tổng quát hơn và hiệu quả hơn.

Here is a brief description of one simple error-controlling packet protocol. The EFTP (Ethernet File Transfer Protocol) is of interest both because it is relatively easy to understand and implement correctly and because it has dutifully carried many valuable files during the development of more general and efficient protocols.

7.1. Thuật ngữ chung
7.1. General Terminology

Khi thảo luận về các giao thức gói tin, chúng tôi sử dụng các thuật ngữ hữu ích chung sau đây. Một gói tin được nói là có một nguồn và một đích. Một luồng dữ liệu được nói là có một bên gửi và một bên nhận, nhận thấy rằng để hỗ trợ một luồng dữ liệu, một số gói tin (thường là các xác nhận) sẽ có nguồn tại bên nhận và đích đến là bên gửi. Một kết nối được nói là có một bộ lắng nghe và một bên khởi tạo, còn một dịch vụ được nói là có một server và một người dùng. Việc xem chúng như các bộ mô tả trực giao của những bên tham gia trong một giao tiếp là rất hữu ích. Tất nhiên, một server thường là một bộ lắng nghe và nguồn của các gói tin mang dữ liệu thường là bên gửi.

In discussing packet protocols, we use the following generally useful terminology. A packet is said to have a source and a destination. A flow of data is said to have a sender and a receiver, recognizing that to support a flow of data some packets (typically acknowledgments) will be sourced at the receiver and destined for the sender. A connection is said to have a listener and an initiator and a service is said to have a server and a user. It is very useful to treat these as orthogonal descriptors of the participants in a communication. Of course, a server is usually a listener and the source of data-bearing packets is usually the sender.

7.2 EFTP
7.2 EFTP

16 bit đầu tiên của tất cả các gói tin Ethernet chứa các địa chỉ trạm đích và nguồn có thể được giao diện diễn giải, mỗi địa chỉ một byte, theo thứ tự đó (xem Hình 2). Theo quy ước phần mềm, 16 bit thứ hai của tất cả các gói tin Ethernet chứa kiểu gói tin. Các giao thức khác nhau sử dụng các tập kiểu gói tin rời nhau. EFTP sử dụng 5 kiểu gói tin: data, ack, abort, end, và endreply. Theo sau từ kiểu 16 bit của một gói tin EFTP là số thứ tự 16 bit, độ dài 16 bit, tùy chọn một số từ dữ liệu 16 bit, và cuối cùng là một từ kiểm tra tổng phần mềm 16 bit (xem Hình 4). Tổng kiểm tra phần cứng của Ethernet chỉ hiện diện trên Ether và không được tính ở mức giao thức này.

The first 16 bits of all Ethernet packets contain its interface-interpretable destination and source station addresses, a byte each, in that order (see Figure 2). By software convention, the second 16 bits of all Ethernet packets contain the packet type. Different protocols use disjoint sets of packet types. The EFTP uses 5 packet types: data, ack, abort, end, and endreply. Following the 16-bit type word of an EFTP packet are 16 bits of sequence number, 16 bits of length, optionally some 16-bit data words, and finally a 16-bit software checksum word (see Figure 4). The Ethernet’s hardware checksum is present only on the Ether and is not counted at this level of protocol.

Rõ ràng là đã không dành nhiều sự quan tâm để nhồi một số trường nhất định vào đúng số lượng bit cần thiết. Trọng tâm ở đây là tính đơn giản và sự dễ dàng trong lập trình. Mặc dù có lời miễn trừ này, chúng tôi vẫn cho rằng nên sai theo hướng sử dụng các trường rộng rãi hơn; dù cố gắng đến đâu, một trường nào đó cuối cùng sẽ luôn trở nên quá nhỏ.

It should be obvious that little care has been taken to cram certain fields into just the right number of bits. The emphasis here is on simplicity and ease of programming. Despite this disclaimer, we do feel that it is more advisable to err on the side of spacious fields; try as you may, one field or another will always turn out to be too small.

Từ kiểm tra tổng phần mềm được sử dụng để làm giảm xác suất xảy ra lỗi không được phát hiện. Nó không chỉ đóng vai trò dự phòng cho tổng kiểm tra dư thừa tuần hoàn phần cứng nối tiếp 16 bit của Ethernet thử nghiệm (trong Hình 2), mà còn bảo vệ chống lại các sự cố trong các đường dẫn dữ liệu song song bên trong các trạm không được CRC kiểm tra. Tổng kiểm tra được EFTP sử dụng là phép cộng bù 1 và xoay vòng trên toàn bộ gói tin, bao gồm phần đầu và dữ liệu nội dung. Tổng kiểm tra có thể bị người dùng bỏ qua với rủi ro của chính họ ở một trong hai đầu; bên gửi có thể đặt tất cả các bit 1 (một giá trị không thể xảy ra) vào từ tổng kiểm tra để chỉ ra cho bên nhận rằng không có tổng kiểm tra nào được tính.

The software checksum word is used to lower the probability of an undetected error. It serves not only as a backup for the experimental Ethernet’s serial hardware 16-bit cyclic redundancy checksum (in Figure 2), but also for protection against failures in parallel data paths within stations which are not checked by the CRC. The checksum used by the EFTP is a 1’s complement add and cycle over the entire packet, including header and content data. The checksum can be ignored at the user’s peril at either end; the sender may put all 1’s (an impossible value) into the checksum word to indicate to the receiver that no checksum was computed.

7.2.1 Truyền dữ liệu.

7.2.1 Data transfer. The 16-bit words of a file are carried from sending station to receiving station in data packets consecutively numbered from 0. Each data packet is retransmitted periodically by the sender until an ack packet with a matching sequence number is returned from the receiver. The receiver ignores all damaged packets, packets from a station other than the sender, and packets whose sequence number does not match either the expected one or the one preceding. When a packet has the expected sequence number, the packet is acked, its data is accepted as part of the file, and the sequence number is incremented. When a packet arrives with a sequence number one less than that expected, it is acknowledged and discarded; the presumption is that its ack was lost and needs retransmission [21].

Các từ 16 bit của một file được mang từ trạm gửi đến trạm nhận trong các gói tin dữ liệu được đánh số liên tiếp bắt đầu từ 0. Mỗi gói tin dữ liệu được bên gửi truyền lại định kỳ cho đến khi một gói tin ack có số thứ tự tương ứng được trả về từ bên nhận. Bên nhận bỏ qua tất cả các gói tin bị hỏng, các gói tin từ một trạm khác với bên gửi, và các gói tin có số thứ tự không khớp với số được mong đợi hoặc số đứng trước nó. Khi một gói tin có số thứ tự mong đợi, gói tin đó được xác nhận, dữ liệu của nó được chấp nhận như một phần của file, và số thứ tự được tăng lên. Khi một gói tin đến với số thứ tự nhỏ hơn số được mong đợi một đơn vị, nó được xác nhận và loại bỏ; giả định là ack của nó đã bị mất và cần được truyền lại [21].

7.2.2 End. When all the data has been transmitted, an end packet is sent with the next consecutive sequence number and than the sender waits for a matching endreply. Having accepted an end packet in sequence, the data receiver responds with a matching endreply and then dallys for some reasonably long period of time (10 seconds). Upon getting the endreply, the sending station transmits an echoing endreply and is free to go off with the assurance that the file has been transferred successfully. The dallying receiver then gets the echoed endreply and it too goes off assured.

7.2.2 Kết thúc.
QP = 4096P = 1024P = 512P = 48
11.00001.00001.00001.0000
20.98840.95520.91430.5000
30.98570.94470.89510.4444
40.98420.93960.88620.4219
50.98340.93670.88100.4096
100.98180.93100.87090.3874
320.98070.92720.86420.3737
640.98050.92630.86270.3708
1280.98040.92590.86200.3693
2560.98030.92570.86160.3686

Khi tất cả dữ liệu đã được truyền, một gói tin end được gửi với số thứ tự liên tiếp tiếp theo và sau đó bên gửi chờ một end-reply tương ứng. Sau khi chấp nhận một gói tin end theo đúng thứ tự, bên nhận dữ liệu trả lời bằng một endreply tương ứng và sau đó chờ trong một khoảng thời gian hợp lý dài (10 giây). Khi nhận được endreply, trạm gửi truyền một endreply lặp lại và được tự do kết thúc với sự đảm bảo rằng file đã được truyền thành công. Bên nhận đang chờ sau đó nhận được end-reply được lặp lại và nó cũng kết thúc với sự đảm bảo tương tự.

Table I. Ethernet Efficiency.

Bảng I. Hiệu suất Ethernet.

Fig. 4. EFTP packet layout.

QQP=4096P = 4096P=1024P = 1024P=512P = 512P=48P = 48
11.00001.00001.00001.0000
20.98840.95520.91430.5000
30.98570.94470.89510.4444
40.98420.93960.88620.4219
50.98340.93670.88100.4096
100.98180.93100.87090.3874
320.98070.92720.86420.3737
640.98050.92630.86270.3708
1280.98040.92590.86200.3693
2560.98030.92570.86160.3686
DestinationSource
Packet Type
Sequence Number
Length (in words)
Data (words)
Software Checksum
1 16-bit Word

Communications of the ACM

The comparatively complex end-dally sequence is intended to make it practically certain that the sender and receiver of a file will agree on whether the file has been transmitted correctly. If the end packet is lost, the data sender simply retransmits it as it would any packet with an overdue acknowledgement. If the endreply from the data receiver is lost, the data sender will time out in the same way and retransmit the end packet which will in turn be acknowledged by the dallying receiver. If the echoed endreply is lost, the dallying receiver will be inconvenienced having to wait for it, but when it has timed out, the receiver can nevertheless be assured of successful transfer of the file because the end packet has been received.

Tháng 7 1976 Tập 19

At any time during all of this, either side is free to decide communication has failed and just give up; it is considered polite to send an abort packet to end the communication promptly in the event of, say, a user-initiated abort or a file system error.

Hình 4. Bố cục gói tin EFTP.

7.2.3 EFTP shortcomings. The EFTP has been very useful, but its shortcomings are many. First, the protocol provides only for file transfer from station to station in a single network and specifically not from process to process within stations either on the same network or through a gateway. Second, process rendezvous is degenerate in that there are no mechanisms for finding processes by name or for convenient handling of multiple users by a single server. Third, there is no real flow control. If data arrives at a receiver unable to accept it into its buffers, the data can simply be thrown away with complete assurance that it will be retransmitted eventually. There is no way for a receiver to quench the flow of such wasted transmissions or to expedite retransmission. Fourth, data is transmitted in integral numbers of 16-bit words belonging to unnamed files and thus the EFTP is either terribly restrictive or demands some nested file transfer formats internal to its data words. And fifth, functional generality is lost because the receiver is also the listener and server.

Trình tự end-dally tương đối phức tạp được thiết kế nhằm làm cho chắc chắn trên thực tế rằng bên gửi và bên nhận của một file sẽ thống nhất về việc file đã được truyền chính xác hay chưa. Nếu gói tin kết thúc bị mất, bên gửi dữ liệu chỉ đơn giản truyền lại nó giống như bất kỳ gói tin nào có xác nhận quá hạn. Nếu endreply từ bên nhận dữ liệu bị mất, bên gửi dữ liệu sẽ hết thời gian chờ theo cùng cách và truyền lại gói tin kết thúc, gói tin này đến lượt nó sẽ được xác nhận bởi bên nhận đang dally. Nếu endreply được phản hồi bị mất, bên nhận đang dally sẽ gặp bất tiện vì phải chờ nó, nhưng khi đã hết thời gian chờ, bên nhận vẫn có thể chắc chắn về việc truyền file thành công vì gói tin kết thúc đã được nhận.

Nothing here.

Vào bất kỳ thời điểm nào trong suốt quá trình này, một trong hai phía đều có quyền quyết định rằng giao tiếp đã thất bại và chỉ từ bỏ; việc gửi một gói tin hủy để kết thúc giao tiếp kịp thời trong trường hợp, chẳng hạn, một thao tác hủy do người dùng khởi tạo hoặc một lỗi hệ thống file được xem là lịch sự.

Nothing here.

7.2.3 Các thiếu sót của EFTP.

Nothing here.

EFTP đã rất hữu ích, nhưng các thiếu sót của nó rất nhiều. Thứ nhất, giao thức chỉ cung cấp việc truyền file từ trạm này sang trạm khác trong một mạng duy nhất và cụ thể không cung cấp việc truyền từ tiến trình này sang tiến trình khác bên trong các trạm, dù trên cùng mạng hay thông qua một gateway. Thứ hai, việc rendezvous của tiến trình bị suy biến vì không có các cơ chế để tìm tiến trình theo tên hoặc để xử lý thuận tiện nhiều người dùng bởi một server duy nhất. Thứ ba, không có điều khiển luồng thực sự. Nếu dữ liệu đến một bên nhận không thể chấp nhận nó vào các bộ đệm của mình, dữ liệu có thể đơn giản bị loại bỏ với sự chắc chắn hoàn toàn rằng cuối cùng nó sẽ được truyền lại. Không có cách nào để bên nhận làm giảm luồng các lần truyền lãng phí như vậy hoặc thúc đẩy việc truyền lại. Thứ tư, dữ liệu được truyền theo các số nguyên từ 16-bit thuộc về các file không có tên và do đó EFTP hoặc là quá hạn chế hoặc đòi hỏi một số định dạng truyền file lồng nhau bên trong các từ dữ liệu của nó. Và thứ năm, tính tổng quát về chức năng bị mất vì bên nhận cũng là bộ lắng nghe và server.

Nothing here.

8 Kết luận

8 Conclusion

Kinh nghiệm của chúng tôi với một Ethernet đang vận hành dẫn chúng tôi đến kết luận rằng việc nhấn mạnh vào điều khiển phân tán của chúng tôi là đúng đắn. Bằng cách giữ các thành phần dùng chung của hệ thống truyền thông ở mức tối thiểu và thụ động, chúng tôi đã đạt được mức độ tin cậy rất cao. Việc cài đặt và bảo trì Ethernet thử nghiệm của chúng tôi đã vượt quá mức thỏa đáng. Tính linh hoạt trong việc liên kết các trạm do chuyển mạch gói tin quảng bá cung cấp đã khuyến khích sự phát triển của nhiều ứng dụng mạng máy tính và xử lý đa nhiệm.

Our experience with an operating Ethernet leads us to conclude that our emphasis on distributed control was well placed. By keeping the shared components of the communication system to a minimum and passive, we have achieved a very high level of reliability. Installation and maintenance of our experimental Ethernet has been more than satisfactory. The flexibility of station interconnection provided by broadcast packet switching has encouraged the development of numerous computer networking and multiprocessing applications.

Lời cảm ơn. Các đồng nghiệp của chúng tôi tại Xerox Palo Alto Research Center, đặc biệt là Tat C. Lam, Butler W. Lampson, John F. Shoch và Charles P. Thacker, đã đóng góp theo nhiều cách vào sự phát triển của các ý tưởng Ethernet và vào việc xây dựng hệ thống thử nghiệm, nếu không có hệ thống này thì những ý tưởng như vậy chỉ là những suy đoán suông.

Acknowledgments. Our colleagues at the Xerox Palo Alto Research Center, especially Tat C. Lam, Butler W. Lampson, John F. Shoch, and Charles P. Thacker, have contributed in many ways to the evolution of Ethernet ideas and to the construction of the experimental system without which such ideas would be just so much speculation.

Nhận tháng 5 năm 1975; sửa đổi tháng 12 năm 1975

Received May 1975; revised December 1975

References

  1. Abramson, N. The Aloha system. AFIPS Conf. Proc., Vol. 37, 1970 FJCC, AFIPS Press, Montvale, N.J., 1970, pp. 281–285.
  2. Abramson, N. and Kuo, F.F. Computer-Communication Networks. Prentice-Hall, Englewood Cliffs, N.J., 1975.
  3. Ashenhurst, R.L., and Vonderohe, R.H. A hierarchical network. Datamation 21, 2 (Feb. 1975), 40–44.
  4. Baran, P. On distributed communications. Rand Corp. Memo RM-3420-PR, Aug. 1964.
  5. Barnes, G.H., Brown, R.M., Kato, M., Kuck, D.J., Slotnick, D.L., and Stokes, R.A. The Illiac IV Computer. IEEE Trans. Computers C-17, 8 (Aug. 1968), 758–770.
  6. Binder, R., Abramson, N., Kuo, F., Okinaka, A., and Wax, D. Aloha packet broadcasting—a retrospect. AFIPS Conf. Proc., Vol. 44, 1975 NCC, AFIPS Press, Montvale, N.J., 1975.
  7. Cerf, V.G., and Kahn, R.E. A protocol for packet network intercommunication. IEEE Trans. Comm. COMM-22, 5 (May 1974), 637–648. Read it here
  8. The shrinking world: computer networks and communications. Computer 7, 2 (Feb. 1974).
  9. Distributed-function computer architectures. Computer 7, 3 (March 1974).
  10. Crocker, S.D., Heafner, J.F., Metcalfe, R.M., and Postel, J.B. Function-oriented protocols for the Arpa computer network. AFIPS Conf. Proc., Vol. 40, 1972 SJCC, AFIPS Press, Montvale, N.J., 1972, pp. 271–279.
  11. Crowther, W.R., Heart, F.E., McKenzie, A.A., McQuillan, J.M., and Walden, D.C. Issues in packet-switching network design. AFIPS Conf. Proc., Vol. 44, 1975 NCC, AFIPS Press, Montvale, N.J., 1975, pp. 161–175.
  12. Farber, D.J., et al. The distributed computing system. Proc. 7th Ann. IEEE Computer Soc. International Conf., Feb. 1973, pp. 31–34.
  13. Farber, D.J., A ring network. Datamation 21, 2 (Feb. 1975), 44–46.
  14. Fraser, A.G. A virtual channel network. Datamation 21, 2 (Feb. 1975), 51–53.
  15. Heart, F.E., Kahn, R.E., Ornstein, S.M., Crowther, W.R., and Walden, D.C. The interface message processor for the Arpa computer network, AFIPS Conf. Proc., Vol. 36, 1970 SJCC, AFIPS Press, Montvale, N.J., 1970, pp. 551–567.
  16. Heart, F.E., Ornstein, S.M., Crowther, W.R., and Barker, W.B. A new minicomputer-multiprocessor for the Arpa network. AFIPS Conf. Proc., Vol. 42, 1972 SJCC, AFIPS Press, Montvale, N.J., 1972, pp. 529–537.
  17. Kahn, R.R. The organization of computer resources into a packet ratio network. AFIPS Conf. Proc., Vol. 44, 1975 NCC, AFIPS Press, Montvale, N.J., 1975, pp. 177–186.
  18. Metcalfe, R.M. Strategies for interprocess communication in a distributed computing system. Proc. Symp. on Computer Commun. Networks and Teletraffic. Polytechnic Press, New York, 1972.
  19. Metcalfe, R.M. Strategies for Operating Systems in Computer Networks, Proc. ACM National Conf., August 1972, pp. 278–281.
  20. Metcalfe, R.M. Steady-state analysis of a slotted and controlled aloha system with blocking. Proc. 6th Hawaii Conf. on System Sci. Jan. 1973, pp. 375–380.
  21. Metcalfe, R.M. Packet communication. Harvard Ph.D. Th., Project Mac TR-114, Dec. 1973.
  22. Metcalfe, R.M. Distributed algorithms for a broadcast queue. Talk given at Stanford University in November 1974 and at the University of California at Berkeley in February 1975, paper in preparation.
  23. Murthy, P. Analysis of a carrier-sense random-access system with random packet length. Aloha System Tech. Rep. B75-17, U. of Hawaii, May 1975.
  24. Ornstein, S.M., Crowther, W.R., Kraley, M.F., Bressler, R.D., Michel, A., and Heart, F.E. Pluribus—a reliable multiprocessor. AFIPS Conf. Proc., Vol. 44, 1975 NCC, AFIPS Press, Montvale, N.J., 1970, pp. 551–559.
  25. Retz, D.L. Operating system design considerations for the packet switching environment. AFIPS Conf. Proc., Vol. 44, 1975 NCC, AFIPS Press, Montvale, N.J., 1970, pp. 155–160.
  26. Roberts, L., and Wessler, B. Computer network development to achieve resource sharing. AFIPS Conf. Proc., Vol. 36, 1970 SJCC, AFIPS Press, Montvale, N.J., 1970, pp. 543–549.
  27. Roberts, L. Capture effects on Aloha channels. Proc. 6th Hawaii Conf. on System Sci., Jan. 1973.
  28. Rowe, L.A. The distributed computing operating system. Tech. Rep. 66, Dep. of Information and Computer Sci., U. of California, Irvine, June 1975.
  29. Rustin, R. (Ed.) Computer Networks (Proc. Courant Computer Sci. Symp. 3, December 1970), Prentice-Hall, Englewood Cliffs, N.J., 1970.
  30. IBM synchronous data link control—general information. IBM Systems Development Div., Pub. Center, Research Triangle Park, N.C., 1974.
  31. IBM system network architecture—general information. IBM Systems Development Div., Pub. Center, Research Triangle Park, N.C., 1975.
  32. Thomas, R.H. A resource sharing executive for the Arpanet. AFIPS Conf. Proc., Vol. 42, 1973 NCC, AFIPS Press, Montvale, N.J., 1973, pp. 155–163.
  33. Thornton, J.E. Design of a Computer: the Control Data 6600. Scott Foresman and Co., Glenview, Ill. 1970.
  34. Walden, D.C. A system for interprocess communication in a resource sharing computer network. Comm. ACM, 15, 4 (April 1972), 221–230.
  35. Willard, D.G. Mitrix: A sophisticated digital cable communications system Proc. National Telecommunications Conf., Nov. 1973.
  36. Wulf, W., and Levin, R. C.mmp—a multi-mini-processor, AFIPS Conf. Proc., Vol. 41, 1972 FJCC, AFIPS Press, Montvale, N.J., 1972. Management Applications H. Morgan Editor Synthesis of Decision Rules Cheng-Wen Cheng and Jonas Rabin Western Electric Decision tables can be used as an effective tool during an interview to record the logic of processes to be automated. The result of such an interview is not a structure of complete decision tables but rather sets of decision rules. The purpose of this paper is to provide a procedure for synthesizing the decision rules and thus provide an aid in developing a structure of complete decision tables. Key Words and Phrases: decision rules, decision tables, logical tables, logical design, system design, specification language CR Categories: 3.50, 4.33 1. Introduction One of the most important stages in the systems development process is fact finding. Fact finding is an investigation and recording of current procedures and future requirements. The most effective method of fact finding is interviewing. Decision tables are an effective tool for recording the logic during the interview process, as discussed by London [1]. The primary objective of the interview is

Read off the page by a vision model reading the page images using gpt-5. Translated into Tiếng Việt by gpt-5, against glossary version 7. Translated from the English.

Read off the page by a vision model reading the page images using olmOCR-2-7B-1025-FP8.