Organization: China Interactive Publishing Network (http://www.china-pub.com/)
RFC Document Chinese Translation Program (http://www.china-pub.com/compters/emook/aboutemook.htm)
E-mail: Ouyang@china-pub.com
Translator: Fu Xiaozhong (michael_fu fuxj@21cn.com)
Translation time: 2001-5-9
Copyright: This Chinese translation copyright belongs to China Interactive Publishing Network. Can be used for non-commercial use free reprint, but must
Keep the translation and copyright information of this document.
Network Working Group Jeffrey Mogul
Request for Comments: 917 computer science department
Category: Standards TRACK Stanford University
October 1984
Internet subnet
(RFC917 --InterNet Subnets)
The state of this memo
This document is a proposal for the INTERNET protocol and needs to be discussed. The release of this memo is not restricted.
Summary
This document discusses the utility of "subnet" in the Internet. "Subnet" is part of the entire Internet. Tube
The reason for reason and technology, many institutions choose to divide a network into several subnets, not simple use of a series of
Internet address.
This document proposes the procedures and processes using the subnet, and discusses the method of solving the problem arising from this, especially
Routing problem.
table of Contents
Introduction 2
1.1. Terminology 3
2 subnet address assignment standard 3
2.1 Analysis of Internet Address 3
2.2 Changes required to support the subnet, software 4
2.3 subnets and broadcasts 5
2.4 Decide the length of the subnet field 6
3. Subnet routing method 6
4. Example 7
4.1 Stanford University 7
4.2 Massachusetts Institute of Technology (MIT) 8
4.3 Carnegie - Mellon University (CMU) 9
5. Address Format Internet Billup Control Protocol (ICMP) 9
5.1 Description 9
5.2 example 10
Reference 12
1 Introduction
The Internet is considered two-layer structure at the beginning, and the high-level is a single chain network, which is a series of series.
"Network" collection, each network has its own network number. (Although the topology of the Internet is actually
The address resolution of the Internet is hierarchical. )
This approach has proven to be simple and effective, but many institutions have found that it is sufficient. Therefore, in the right
The third layer is added to the resolution of the Internet address. From this point of view, a particular network needs (you can also
Can not be required) a layered series of subnets.
It is based on such a hypothesis to be built, namely, in a certain network.
In the main unit, the network it is in only one boundary, that is, this network can be considered as a promise
Multi-host black boxes. This is correct to the early Arpa network in the Internet. Because IMPS blocks the net
The use of special connections in the network. This is also like this for most LAN technology, such as Ethernet and ring networks.
But this assumption is not right in many practices. In a medium-sized institution, such as a few buildings, universities and companies, often require multiple local area network cables to connect "local areas". Write this document is,
Stanford University has 18 such network cables, and more still planned.
There are several reasons for connecting several regions with multiple network cables:
Different technology networks: especially in research environments, there may be several different local area networks, for example,
A agency has some devices to support Ethernet, while others support the ring network.
• Technical restrictions: Most technologies due to the limitations of electrical parameters, and the total number of mains and network cables
The length is limited. These limits, especially the length of the network cable is easy to achieve.
Network congestion: In a local area network, a small part of the host is likely to exclude most of the bandwidth. usually
The way to solve this problem is to use the host according to how many parts of communication, each part is used
Different network cables.
? Point-to-point connection: Sometimes a "local area" is divided into several parts, while the distance between some parts
It is too far from the above local area network technology. In this case, the high-speed point-to-point connection can be used
Pick these local area networks.
There are three options to allocate Internet addresses for institutions that have to use multiple local area networks:
1. Assign a network number for each network.
2. Allocate a network number for the entire organization and assign an address to the host, regardless of the host?
Domain network.
3. Use a network address and divide a few address spaces, allocate a child from each local area network.
Network address (explicit subnet).
Each method has a disadvantage. The first method does not need to modify and increase the existing protocol, but will cause routing
The dramatic increase in the table, the internal connectivity information of the entire network spread throughout the Internet, and this information is for this machine.
There is no use outside the world. Especially now some gateways do not have a large routing table space. So this problem
It should be avoided.
The second method requires a certain protocol to integrate certain local area networks into a single network. For example, use
In the LAN of the Address Resolution Protocol (ARP), the Internet address is parsed to the hardware address, the network of local area networks
The bridge intercepts the request for ARP to non-local targets. But not all local area network technology can do this,
Don't use ARP or do not support the broadcast protocol. A more basic problem is that the bridge must know each host
In which local area network (this information can be obtained by broadcast algorithm), with the increase of the host, the price of the broadcast is also
Increased, the buffering required for conversion also increases.
The key issue of the third method is that alumni's standards believe that all the hosts on the same LAN is used in the same network.
Line is connected. The solution is an explicit support subnet. This needs to change the existing Internet protocol, change the present
Implementation method of IP is being used. But we believe that such changes are not very large, and only need to modify it once.
You can get a simple and effective solution. We use the methods used in this document to avoid leading and existing non-
The host is not compatible with the host online.
When you find a suitable method, you may be that the host in the subnet doesn't know that you are in the subnet. This is behind
Easy interpretation. This is very useful when you cannot modify the host to support the "explicit subnet".
1.1. Term
In order to explain the clear and concise, some terms are defined here, and they are used in later:
Chain network: a collection of networks connected together
Network: A network in the Internet (can be divided into subnets, can also be regarded)
Subnet: part of the network
INT: See Reference [8]
Local address: The bit is not assigned to the network number in the Internet address, also called "remaining bit" sub-network number: the number of the network in the network
Subnet: The bit is assigned to the subnet number in the Internet address
Host bit: Internet address is used to indicate the bit of specific hosts
Gateway: Connect two or more different networks or subnets, pass data nodes
Bridge: Connect two or more physical can be managed, but manage uncomaped subnets, becoming the delivery data package
The node, the host does not know its existence.
2 subnet address assignment standard
According to the description in [2], the division subnet is the issue of the allocation of the address. In this section, we first
Propose an address resolution scheme that supports subnets, then discusses the relationship between this address format and broadcast, finally
An address resolution protocol.
2.1 Analysis of the Internet Address
Suppose an institution is assigned to a network number and divides it into a series of subnets and is allocated to the host. how to proceed
? Because the allocation limit of the local address part in the Internet address is small, the assignment of subnet numbers is mainly
There are several ways:
a) Variable length field: Any bit of the local address can be used to use the subnet number, although this part of the length is
A particular network is certain, but each network can be different. If the length is 0, then explanation
There is a subnet.
b) Delivery field: Specify length field (such as 8 digits) use the language son number (in the use of subnet
During the case.
c) Self-coding bell-length field: The length of the network is determined by its high position, similar, subnet number
Field length is also determined by its high position.
d) Self-coding fixed length field: a certain length of the field to the subnet. If the highest bit is 1, then use
Subnet, otherwise it is not used.
What criteria choose one from these four scenarios? First, determine if you want to use the self-coding scheme,
Is it possible to learn whether the address is useful by detecting an Internet address?
One advantage of self-encoding is that people can know if a non-local network is divided into a subnet. Is this
It is still not very clear. But the main benefits are no additional information to illustrate whether the two addresses are in the same child.
Online. However, from another perspective, this will also be a disadvantage: for non-subnet networks, if there is a host
Use any use in the local address field of the address, it will cause problems (1). In other words, if it can be independent of the main
This will be very useful if the allocation of the machine address is controlled. Another disadvantage of self-coding scheme is to give the master
The address space used by the machine will decrease at least 2 digits.
If there is no self-coding scheme, it is obvious that it is appropriate to make long subsidiary. Since it is in any case
Each network has a "logo" display whether to use the subnet, use an integer flag than the use of the Boolean flag
The fee can be ignored. The advantage of using the ever-network field is to allow each institution to choose the best allocation scheme to
The number of address bits used by the subnet and the host is paid.
Therefore, the resolution of the Internet address we propose is:
<网号>
The bit used by the network number is described in Reference [8]. The host number field is at least 1 bit. The length of the subnet field is in one
It is fixed in a network. Subnet fields and host fields do not require other data. If the length of the subnet field is 0,
Then the subnet is not used.
For example, in a Class A network, there is an 8-bit subnet field, its address is as follows:
- - - - - - - - - - - - - - - | 0 | Network | Subnet | Host number |
- - - - - - - - - - - - - - - -
In order to achieve simple and effective, we hope that all institutions use 8 or 8 multiples.
Segment length. But as a unified implementation method, it must be other possible lengths.
We oppose the use of "recursive subnet", which is to divide the host number field into subnets and hosts. because:
- There is no obvious demand for the four-layer structure.
- There is not enough location in the IP address to have practical value.
- Need complex and external mechanism
2.2 Changes needed to support subnets and software
In most IP implementations, there is often similar to the following code in the module that sends out the packet outward:
IF IP_NET_NUMBER (Packet.ip_Dest) = IP_NET_NUMBER (my_ip_addr)
THEN
Send_packet_locally (packet, packet.ip_dest)
Else
Send_packet_locally (packet,
Gateway_to (IP_NET_NUMBER (Packet)))))
IF Internet network number (packet target address) = its own network number
THEN
Send a local packet
Else
Send a local data package to the gateway
In order to support the subnet, another 32-bit value is required to become a network mask. This is a bit mask, each place
The settings and IP network numbers and subnet numbers correspond. For example, a Class A network uses an 8-bit subnet field,
The mask is 255.255.0.0.0.
Then the above program code becomes:
IF bitwise_and (packet.ip_dest, my_ip_mask)
= bitwise_and (my_ip_addr, my_ip_mask)
THEN
Send_packet_locally (packet, packet.ip_dest)
Else
Send_packet_locally (packet,
Gateway_to (bitwise_and (packet.ip_dest, my_ip_mask))))
Of course, the expression of some of the conditions can be pre-calculated.
Function "Gateway_to" may need to be modified to do a similar comparison and judgment.
To support hosts connected to multiple networks, programs can set their respective network interfaces.
"MY_IP_ADDR" and "My_IP_MASK", the comparisons and judgments in the above code are also done for each network interface.
2.3 subnets and broadcasts
In the case where there is no subnet, there may be only two broadcasts in the Internet protocol: broadcast to all of the specified network.
Host, or all hosts broadcast to your own network. The latter method does not know where you are in which network
It is useful.
When the subnet is used, the situation is complicated. First, the possibility of broadcasting to a particular subnet is generated. Second, all hosts in the broadcast to the subnet need additional mechanisms. Finally, the interpretation of "broadcast to its network" becomes
"Broadcasting itself]
The implementation of this must be recognized in the 3nd broadcast address and its host address:
Bible physical network
All bits are 1 target address (255.255.255.255) will enable packets in local physical networks.
Broadcasting, the gateway does not pass these packets.
Specified network
There is a valid network address in the target address, while the local address part is 1 (for example: 36.255.255.255).
Subnet designated
The end address and subnet address in the target address are valid, and the host number field is 1 (such as:
36.40.255.255).
More in-depth discussion of Internet Broadcasting [6].
A factor that helps to decide whether to use the subnet is: Whether a host needs to use a step to give all
Host broadcast. If the two hosts are not in the same network, it is impossible to broadcast them in one step.
2.4 Determine the length of the subnet field
How do a host know how long the use of the subnet field? This issue and several "boot procedures" issues
Very similar: How do a host know your address and how to know the address of the gateway. For these three questions, there are two
Basic Solution: "Hard Code" and the broadcast-based protocol.
"Hard Code" information means information that the host does not receive through the network. Can be compiled, or more
A good way is to store in a disk file. But for the continuous increased diskless workstation, because it is from the network
Move, so the two "encoded" methods are not applicable. Most of the local area network technologies support broadcast, so
Another preferred method is the required information required to start the host broadcast. For example, in order to know your own Internet
Address, you can use the Reverse Address Resolution Protocol [4].
We recommend extending the ICMP [9] Agreement (Internet Bill Control Protocol) to join a new couple of ICMP
Message Type: "Address Format Request" and "Address Format Reply", and "Information Request" and "Information Recovery"
The interest is very similar. See Appendix 1 for details.
When a host starts, broadcast newly added ICMP messages "Address Format Request" <3>. Gateway (or quite
After receiving the host) of the gateway, the reply is reply in "address format reply". If the request is not explained?
When the machine is sent (source IP address is 0), the reply message is issued in the form of broadcast. I will receive the requested host.
This message knows your subnet length.
There is only one value in the Address Format Request, so there is no need to match the host.
Qi reply: There is no relationship with multiple gateway replies. We think the host will not always start from the new, so
The broadcast load on these two messages is small.
If the host is in several local area, it needs to use this protocol for each LAN unless it can be determined.
(Reply from one of the networks) Several local area networks are in the same network. In this case, its address will
Have the same subnet length.
A potential question is that if the host repeats, there is no response to the "address format request" multiple times.
How to do. There are three reasons that may lead to this situation:
1. The LAN is not connected to other networks (permanent).
2. There is no subnet, and there is no host to support these two ICMP requests.
3. All gateways do not work properly (temporary)
First, two situations means that the subnet length is 0. In the third case, it can't know what it is:
The safest choice is 0. Although it is likely to be wrong, this will not block the data transfer that can be successful. When the gateway recovers work, it will reply when it receives the "address format request", and the host can get the correct
Information and adjustments to their own data. Host and gateways should not send "guess" "address"
Reply ".
Finally, pay attention to do not require the host to use these two ICMP protocol messages to obtain subnet length, especially
It is a host with a stable storage medium.
3. Subnet routing method
All hosts have to face how to determine the route to another host. In the case of subnet
Next, this problem only needs a small change.
After using the subnet, the routing process will handle two levels. If the target host and the source master are in the same network,
Only the gateway between the child is required to determine the route. And if the target host and source host are in different networks,
The gateway between the network and the gateway between the subnets jointly determines the route.
Fortunately, many hosts can use the "default" gateway as the first goal of all routes, reply
The ICMP host redirects the message to define more suitable routes. But this method is for gateways and connecting in multiple networks
The host in the network is too low, but the routing information exchange protocol should be used. This is beyond the scope of this document.
This problem also exists without subnet.
For hosts only on a network, you need to find at least one adjacent gateway. Similarly, there are two solutions.
Process: hardcodes and broadcasts. The problem of adjacent gateways also exists when not using the subnet, use no subnet
No effect.
But there is another problem: the source host must know the packet is sent directly to the target host or to pass the network.
Get send? That is to know if the target host and the source host are on the same physical network. This is the only way
A place where you need to know the subnet in one by one. In fact, if broadcasting is not used, this is the only thing in the implementation of the Internet.
To modify the place.
Therefore, it is possible to use an existing method to support the subnet <4> without modification. Such implementation
The following conditions must be available:
- Only for hosts connected to a network, do not use it to the gateway.
- Use in a local area network with broadcast.
- Use the address resolution protocol ARP, such as [7].
- Do not need maintenance and gateways.
In this case, you can modify the address parsing the ARP service module on the subnet closing, when it receives the address
When parsing the request, check if the packet is transmitted by the best route. If so, you will reply your hardware address to
Source host. The source host considers the address of the gateway to the target address and sends the packet to this address. In fact,
The gateway will receive these packets and passed it to the target address.
This approach makes it clear that the processing level in the gateway is not clear, because usually, the address resolution server and the road
There is no contact by the table. Considering this, this method is not very satisfactory. But it is quite simple to achieve, and
There is no significant loss of performance. The problem is that if the original gateway is issued, there is no way to choose another gateway.
In this way, a successful connection can be successfully connected under other methods.
Don't confuse the "subnet technology based on address resolution protocol" and "bridge based on address resolution protocol"
use. The former is based on the gateway to check the ability of the IP address to derive the ability of the route, based on the topology of the explicit subnet.
structure. A small portion of the routing function is transferred from the host to the gateway. The bridge based on the address resolution protocol is not known.
Under the conditions of the main machine address and network topology, the location of each host is known.
Note: The subnet technology based on the address resolution protocol is complicated due to the use of broadcasts. Address resolution server
Respond to the request of the target address is a broadcast address. Such requests may only come from the mains that do not know the broadcast address
machine. This will result in a loop pass of the packet. If there is N not to know the host in a physical network
Machine, then the survival time is T's data packets will be repeated broadcast T ** N.
4. example
This part we briefly introduce the subnet use of several institutions. 4.1 Stanford University
At Stanford University, the initial subnet is introduced due to historical reasons. Since 19979 (at the time
The net agreement is not used yet), Stanford uses PUP protocol in several experimental Ethernet, using a lot of PUP
The gateway, all host and gateways use the broadcast protocol to exchange routing table information.
When introduced into the Internet protocol, it is determined using the 8-bit long subnet to make the number of Internet subnets and each
The number of PUP networks in Too Net wants to match. PUP host's field length (also 8) is also the main network
The length of the machine address field
Only the gateway of PUP has been modified to pass the Internet packet according to the PUP routing table. This
The gateway does not operate the 'Survival Time' field in the IP package. The fault of passing the loop at that time
The mistake did not show it.
The Internet host has made modifications to understand the subnet (there are several ways, the effect is the same). Because all hosts
PUP has been implemented, so the maintenance process of the route table of the Internet is the same as maintaining the PUP, as long as it is simple
The PUP network number becomes the Internet number.
After adding 10M Ethernet, the gateway is modified to use the address resolution protocol (ARP), so you can repair
Change the host.
The Internet subnet began to use early 1982, and there were approximately 330 hosts, 18 subnets,
18 subnet gateways. When only the gateway of PUP is replaced with a real Internet network, the Internet is introduced.
The routing information exchange protocol, PUP gradually stops.
4.2 Massachusetts Institute of Technology (MIT)
The MIT is the first place with a large number of local area networks. No network yet
Network classification, if each connection allocates a network number, use a large number of available address spaces. Matrology
The Institute of Engineering decided to use a network number and manage the 24-bit in the address. These bits are divided into 3 8 digits
Field: Subnet field, reserved field (its value of 0) and host fields. This is used by the Massachusetts Institute of Technology.
The 8-bit long subnet is used in the Chaos protocol, so the same subnet number can be used in the two protocols. Use 8 digits
The host address is because most of the hardware in the Chaos protocol uses an 8-bit address. The 8 bits reserved are for
After use.
Originally plans to use the dynamic routing agreement between the subnet network and have several agreements, but no one is willing to go
Implement one, so the static routing table is still used.
In order to solve the introduction of software needs to be modified to make it work in the subnet environment, the Massachusetts Institute of Technology wants to find one
Make minimal modified models for IP software. This model is the IP gateway sends an ICMP host redirect message, not
It is a network redirection message. All IP gateways in the MITS Institutes are like this. Because every host
The routing table that can be maintained in non-local network communication, which hides most of the subnet structure. Subnet and non-subnet
The 'minimum adjustment model' of the host software is a bit mask.
Massachusetts Due to its autonomous and installed software, as well as without an excellent industrial standard
Institute of Technology does not plan to use this agreement immediately, but use a single physical connection and package exchange mechanism, and
Several virtual protocol networks on this mechanism. MIT has tried to exchange routing letter between different protocols
Interest, and put a protocol in another protocol, some lessons are obtained. In addition to basic hardware, agreement
Because it is strictly independent. Using the ARP hidden subnet structure is not very good, in a complex system (with loop
In and different connection rates), the ARP will overload the address operation. The gateway needs a more complex information interchangeral
law.
4.3 Carnegie - Mellon University (CMU)
Carnegie - Mellon University uses a Class B network, the network is divided into 11 physical subnets, 2 3M experimental Ethernet, 7 10M Ethernet and 2 PRONET loops. Although the third 8-bit word is made when allocating the host address
The same address is on the same subnet, but this is only convenient to manage, not a must. Software doesn't know this
Distribution mechanism.
Carnegie - Mellon University uses an ARP-based bridge program. When a host issues an ARP request,
The bridge to the bridge put the original address map into the cache and passed the request to other cables. When the bridge receives one
When the ARP response of the target address, look for which cable sent to this reply from the cache. In this way, the bridge is trying
Extend the ARP protocol transparent to different class multi-cable environments. This requires the bridge to broadcast a cable on a cable.
Gets broadcast on all connected cables. So this algorithm is only feasible on the network that is not connected to the loop. This
A simple algorithm is replaced to support the redundant path and reduce the algorithm of the broadcast load is in progress.
Carnegie - Mellon University uses RFC-826 address analysis associations support 3M Ethernet and 10M PRONET ring
.
Because Carnegie-Mellon University has no redundant connection cable, there is no need to care about the crash of the bridge. The internet
150 hosts also make the bridge have sufficient cache, and the bandwidth used by ARP broadcast is not large.
But Carnegie-Mellon University's network will become 5000-10000 mainframes from a single network of small networks.
Connect the big network of the entire campus. ARP-based bridge program is no longer used, there is a need for a system with clarity
System. The mid-term goal is to create an environment that can introduce an IP implementation that has not been modified. Its purpose is as possible
Keep the routing mechanism to the transparent transparency.
5. Address Formatting Internet Breeding Control Protocol (ICMP)
5.1 Description
Address format request or address format reply
0 1 2 3
0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1 2 3 4 5 6 7 8 9 0 1
- - - - - - - - - - - - - - - -
| Type | Code | Checksum |
- - - - - - - - - - - - - - - -
| Identification | Serial Number |
- - - - - - - - - - - - - - - -
IP field:
address
The source address of the address format request message is the destination address of the address format reply message. in order to
Component, the source address of the request is a reply target address, the source of replying to the message
The site is set to the address of the reply. "Type" is set to "A2", "Encoding" field is set to the length of the subnet field, and then calculate the checksum. If the source address of the request is 0, then reply
The target address is set to a broadcast address.
Internet Report Control Protocol (ICMP) field
Types of
A1 Represents address format request message
A2 represents address format reply message
coding
0 Representative address format request message
Non 0 representative address format reply message subnet length length
Check and verify
The remaining number of the 16-bit and the remainder starting from the Internet Report Control Protocol "Type" field. Calculate
When the checksum should be 0. It may be changed later.
Logo
Match the request and the logo of the reply, can be 0.
serial number
The serial number of matching requests and reply can be 0.
The gateway that receives the address format request is to reply to this request. It needs to place the "encoding" field as a request
The length of the subnet field of the address network. If the request is broadcast, its target address is "this network".
The length of the subnet field can be 0- (31-n), n is the length of the IP network field (8, 16 or 24).
If the requested host does not know his address, it may put the source site in the request to 0, and the reply is wide.
Broadcast. Because a network is free of an address format, all there is no need to match the request and reply. This party
It should be avoided as much as possible because it increases unnecessary network traffic.
Type A1 may be received from gateways and hosts
Type A2 may be received from a gateway and gateway.
5.2 examples
In the following example, we assume that the address of the requesting host is 36.40.0.123, the gateway is 36.40.0.62,
In the 36.0.0.0 network, the 8-bit subnet is used.
First, assume that the broadcast is allowed, the host sends the following packets:
Source address: 36.40.0.123
Target Address: 36.255.255.255
Agreement: ICMP = 1
Type: Address Format Request = A1
Code: 0
36.40.0.62 will receive this packet and reply as follows:
Source address: 36.40.0.62
Target Address: 36.40.0.123
Agreement: ICMP = 1
Type: Address Format Reply = A2
Code: 8
The following example assumes that the address 255.255.255.255 represents "broadcast to this physical network". Above
There is no power. Because such broadcasts may broadcast to multiple subnets. The most effective way we recommend
Yes, the host first finds its own address (you can use the "reverse address resolution protocol") described in Reference [4]),
The ICMP request is then sent to 255.255.255.255.
Source address: 36.40.0.123
Target Address: 255.255.255.255
Agreement: ICMP = 1
Type: Address Format Request = A1
Code: 0
The gateway can reply directly to the requesting host.
Suppose 36.40.0.123 is a diskless workstation and does not know his host number. It can send the following data:
Source address: 0.0.0.0
Target Address: 255.255.255.255
Agreement: ICMP = 1
Type: Address Format Request = A1
Code: 0
36.40.0.62 will receive this packet and reply: source address: 36.40.0.62
Target Address: 36.40.255.255
Agreement: ICMP = 1
Type: Address Format Reply = A2
Code: 8
Note that the gateway replys using the smallest broadcast range (sent to 36.255.255.255) in many subnets
Broadcast, not just a subnet required. Even so, this broadcast also causes unnecessary network load.
So we recommend using the "anonymous (0.0.0.0.0)" source address as little as possible.
If the broadcast is not allowed, assume that the host has the hardcoding information of the neighboring gateway, then 36.40.0.123 will send:
Source address: 36.40.0.123
Target Address: 36.40.0.62
Agreement: ICMP = 1
Type: Address Format Request = A1
Code: 0
The reply and the above example of 36.40.0.62
note
The host number assigned in some of the Class A networks is the low 24 bits of its Ethernet hardware address.
The Internet broadcast we discussed is a basis reference [6].
If broadcast is not supported, it is assumed that the host knows the neighbor gateway address and sends ICMP to this gateway.
This is the consensus of the transparent subnet and explicit subnet mentioned in the same network.
reference
D.R. Boggs, J.F. Shoch, E.A. Taft, and R.M. Metcalfe, "PUP: An Internet Structure",
IEEE Communication Journal, COM-28, 4, 612-624, April 1980
David D. CLARK, "Name, Address, Port, Route", RFC-814, MIT-LCS, July 1982
YOGAN K. DALAL and ROBERT M. Metcalfe, "Broadcast Packets", Comm. ACM 21,
12, 1040-1048 Page, December 1978
Ross Finlayson, Jeffrey Mogul and Marvin THEIMER, "Reverse Address Analysis
Agreement, RFC-903, Stanford University, June 1984
R.M. Metcalfe and D.R. Boggs, Ethernet: Distributed LAN Pack Switch, Comm. ACM
19, 7, 395-404, July 1976
Jeffrey Mogul, "Broadcast Packet", RFC-919, Stanford University, October 1984
DA Jeffrey Mogul, "An Ethernet Address Analytical Agreement", RFC-826, September 1982
Jon Postel, "Internet Agreement", RFC-791, USC-ISI, September 1982.
Jon Postel, "Internet Report Control Agreement", RFC-792, USC-ISI, September 1981
RFC917 - Internet Subnets Internet Subnet
1
RFC Document Chinese Translation Program