<?xml version='1.0' encoding='utf-8'?>
<!DOCTYPE rfc [
  <!ENTITY nbsp    "&#160;">
  <!ENTITY zwsp   "&#8203;">
  <!ENTITY nbhy   "&#8209;">
  <!ENTITY wj     "&#8288;">
]>
<?rfc strict="yes"?>
<?rfc toc="yes"?>
<?rfc tocdepth="4"?>
<?rfc symrefs="yes"?>
<?rfc sortrefs="yes"?>
<?rfc compact="yes"?>
<?rfc subcompact="no"?>
<rfc xmlns:xi="http://www.w3.org/2001/XInclude" category="info" docName="draft-hou-rtgwg-satellite-ground-routing-00" ipr="trust200902" obsoletes="" updates="" submissionType="IETF" xml:lang="en" tocInclude="true" tocDepth="4" symRefs="true" sortRefs="true" version="3">
  <!-- xml2rfc v2v3 conversion 3.17.3 -->
  <!-- ***** FRONT MATTER ***** -->

    <front>
    <title abbrev="Satellite Ground Routing Architecture">Satellite Ground Routing Architecture Based on Access Satellite Prediction</title>
    <seriesInfo name="Internet-Draft" value="draft-hou-rtgwg-satellite-ground-routing-00"/>
    <author fullname="Hou Dongxu" initials="H." role="editor" surname="Dongxu">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street>No.50 Software Avenue</street>
          <city>Nanjing</city>
          <region>Jiangsu</region>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>hou.dongxu@zte.com.cn</email>
      </address>
    </author>
    <author fullname="Xiao Min" initials="X." surname="Min">
      <organization>ZTE Corporation</organization>
      <address>
        <postal>
          <street>No.50 Software Avenue</street>
          <city>Nanjing</city>
          <region>Jiangsu</region>
          <code>210012</code>
          <country>China</country>
        </postal>
        <email>xiao.min2@zte.com.cn</email>
      </address>
    </author>
    <date month="Nov" year="2024"/>
    <!--<area>General</area>-->
    <!--<workgroup>Internet Engineering Task Force</workgroup>-->
    <area>Routing</area>
    <workgroup>RTGWG</workgroup>
    <keyword>Satellite ground routing</keyword>
    <keyword>Routing architecture</keyword>
    <keyword>Satellite prediction</keyword>
    <abstract>
      <t>With the development of network technology, the satellite network are gradually integrating 
                with the terrestrial network. This draft illustrates a satellite ground routing 
                architecture based on access satellite prediction to solve the end-to-end communication 
                issue in the satellite ground integration scenario where the connection between terrestrial 
                nodes and satellites switches frequently. This architecture includes registration nodes which 
                are responsible for maintaining access node information. Each access node preserve satellite 
                orbit information, performs access satellite prediction, and generates encapsulation 
                addresses. The access satellite undertakes data encapsulation, data forwarding, and data 
                unencapsulation based on encapsulation addresses.</t>
    </abstract>
  </front>
  <!-- ***** MIDDLE MATTER ***** -->

    <middle>
    <section numbered="true" toc="default">
      <name>Introduction</name>
      <t>With the development of network technology, the satellite network are gradually integrating with
                the terrestrial network. The integration methods includes BGP-based integration and 
                tunnel-based integration.</t>
      <t>The satellite network and the terrestrial network belongs to different ASs(Autonomous Systems). The 
                routing information between different ASs are exchanged by BGP. BGP adjacency relationships 
                between terrestrial nodes and satellites change with connection variation. If terrestrial 
                routing protocols are directly used in this scenario, following issues would occurs:</t> 
      <t>(1) The connection between terrestrial nodes and satellites switch frequently which causes continuous
                routing information update.</t>
      <t>(2) Sudden connection interruption can't be avoided for the complex communication environment in the 
                space.</t>
      <t>(3) The continuous routing informaiton update further influences the stability of the terrestrial 
                network.</t>
      <t>Therefore, the tunnel-based integration architecture which isolates the impact between different 
                networks is a viable approach. In this architecture, the satellite network is considered as a 
                system which is independent of the terrestrial network, and doesn't need to recognize the 
                routing information of the terrestrial network. When terrestrial nodes communicate across the 
                satellite network, all data packets need to be encapsulated. The maintenance and acquisition 
                of packet encapsulation information is the key issue in this method. Considering this problem, 
                the draft proposes a satellite ground routing architecture based on access satellite prediction.</t>
      <t>The architecture includes registration nodes which are responsible for maintaining access node 
                information. Each access node preserve satellite orbit information, performs access satellite 
                prediction, and generates encapsulation addresses. The access satellite undertakes data
                encapsulation, data forwarding, and data unencapsulation based on encapsulation addresses. 
                Further details are discussed in subsequent sections.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Requirements Language</name>
      <t>The key words "MUST", "MUST NOT", "REQUIRED", "SHALL", "SHALL NOT", "SHOULD", "SHOULD
                NOT", "RECOMMENDED", "NOT RECOMMENDED", "MAY", and "OPTIONAL" in this document are
                to be interpreted as described in BCP 14 <xref target="RFC2119" format="default"/>
        <xref target="RFC8174" format="default"/> when, and only when, they appear in all capitals, as
                shown here.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Terminology</name>
      <ul spacing="normal">
        <li>GS: Ground Station</li>
        <li>VLEO: Very Low Earth Orbit with the altitude below 450 km.</li>
        <li>LEO: Low Earth Orbit with the altitude between 180 km and 2000 km.</li>
        <li>MEO: Medium Earth Orbit with the altitude between 2000 km and 35786 km.</li>
        <li>GEO: Geosynchronous Orbit with the altitude 35786 km.</li>
        <li>Intra-satellite links: Links between adjacent satellites in the
                        same orbit.</li>
        <li>Intra-satellite links: Links between adjacent satellites in the
                        different orbits.</li>
        <li>SGP4: Simplified Perturbations Models</li>
        <li>Lon: Longitude</li>
        <li>Lat: Latitude</li>
        <li>BGP: Border Gateway Protocol [RFC4271]</li>
        <li>IGP: Interior Gateway Protocol, examples of IGPs inculde Open Shortest 
                        Path First (OSPF [RFC2328]), Routing Information Protocol (RIP [RFC2453]), 
                        Intermediate System to Intermediate System (IS-IS [RFC7142]) and Enhanced 
                        Interior Gateway Routing Protocol (EIGRP [RFC7868]).</li>
      </ul>
    </section>
    <section numbered="true" toc="default">
      <name>Satellite Ground Routing Architecture</name>
      <t>The satellite-ground routing architecture which is based on access satellite prediction contains 
                  three types of nodes, namely the terrestrial node, the registration node, and the 
                  access satellite, as shown in Figure 1.</t>
      <figure>
        <name>Satellite ground routing architecture based on access satellite prediction</name>
        <artwork align="center" name="" type="" alt=""><![CDATA[ 
     .--.                .--.                .--.     
###-| N1 |-### <--> ###-| N2 |-### <--> ###-| N3 |-###
     \__/                \__/  ------------  \__/     
      |                   |   / ---------- \1  |      
     /|\                 /|\ * /  2       \ \ /|\     
    \___/               ┌---┐ /            \ \ O      
     / \                |───|               * ─+─     
    Ground              |   |Registration     / \     
    Station             └---┘Node             User      
	                   ]]></artwork>
      </figure>
      <t keepWithPrevious="true"/>
      <t>The satellite which communicates with ground nodes at a designated time is the access satellite.
                  As shown in Figure 1, N1 is the access satellite of GS(Ground Station). The access satellite 
                  needs to maintain the mapping relationship between all the satellites and the access network 
                  addresses which as shown in Table 1. Considering the support for different network architectures,
                  the satellite identifier in the mapping relationship can be IPv4 addresses, IPv6 addresses,
                  DTN addresses, and etc. Therefore, the address type of satellite identifiers are not specified
                  in Table 1 and are only represented by sat1_iden.</t>
      <table anchor="Table-Satellite-prefix" align="center">
        <name>LEO and its access network prefix with ground nodes</name>
        <thead>
          <tr>
            <th align="center">Satellite Number</th>
            <th align="center">Satellite Identifier</th>
            <th align="center">Network Prefix</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center">sat1</td>
            <td align="center">sat1_iden</td>
            <td align="center">prefixA</td>
          </tr>
          <tr>
            <td align="center">sat2</td>
            <td align="center">sat2_iden</td>
            <td align="center">prefixB</td>
          </tr>
          <tr>
            <td align="center">sat3</td>
            <td align="center">sat3_iden</td>
            <td align="center">prefixC</td>
          </tr>
          <tr>
            <td align="center">......</td>
            <td align="center">......</td>
            <td align="center">......</td>
          </tr>
        </tbody>
      </table>

      <t>The registration node records the network information of all the terrestrial nodes accessing the 
                  satellite network, as shown in Table 2. This table describes the mapping relationship between 
                  network nodes or node identifiers and geographic location, e.g. latitude and longitude.</t>
      <table anchor="Table-Registration-nodes" align="center">
        <name>Registration information of ground access nodes</name>
        <thead>
          <tr>
            <th align="center">Network Node</th>
            <th align="center">Node Identifier</th>
            <th align="center">Geographical Location</th>
          </tr>
        </thead>
        <tbody>
          <tr>
            <td align="center">User</td>
            <td align="center">prefix1.area_id1.device_id1</td>
            <td align="center">(lon1,lat1)</td>
          </tr>
          <tr>
            <td align="center">GS</td>
            <td align="center">prefix2.area_id2.device_id2</td>
            <td align="center">(lon2,lat2)</td>
          </tr>
          <tr>
            <td align="center">......</td>
            <td align="center">......</td>
            <td align="center">......</td>
          </tr>
        </tbody>
      </table>
      <t>The terrestrial node includes ground stations, terminal users, and etc. When the terrestrial node 
                  accesses the satellite network, it should communicate with the registration node, register 
                  its network information, and obtain network information of other terrestrial nodes firstly. 
                  The registration and information acquisition process corresponds to "1" and "2" in Figure 1. 
                  To build the link with the registration node, the address of the registration node should 
                  be pre-configured on the terrestrial node. In addition, the pre-configured information contains 
                  the satellite orbit information and the access network information of different satellites.</t>
    </section>

    <section numbered="true" toc="default">
      <name>Node Addressing</name>
      <t>When accessing the satellite network, the terrestrial node establishes connection with the registration node,
                  and informs its address as well as location informaiton to the registration node.</t>
      <t>Terrestrial nodes switch connections among multiple satellites for the movement of satellites. The access address
                  of terrestrial nodes would also change accordingly. Therefore, the address information registered by 
                  terrestrial nodes should meet two requirements:</t>
      <t>(1) The address information is the unique identifier of the terrestrial node.</t>
      <t>(2) Based on the address information and the satellite orbit prediction, the address which is served to connect 
                  the remote terrestrial node and the corresponding access satellite at a specified time can be determined.</t> 
      <t>To achieve the above requirements, the address information of terrestrial nodes is represented by a loopback 
                  address or router ID, and includes two parts of information, namely the geographic area and the device 
                  number within the area. The address format is shown in Figure 2.</t>
        <figure>
          <name>Address format</name>
          <artwork align="center" name="" type="" alt=""><![CDATA[ 
┌--------┬---------┐-----------┐
| Prefix | Area ID | Device ID |
└------─-┴---------┴----─------┘
	                   ]]></artwork>
        </figure>
        <t keepWithPrevious="true"/>
      <t>Prefix: The prefix part of an address, which can be used to distinguish node types such as ground stations, end 
                  users, and etc.</t>
      <t>Area ID: The geographic identifier marks different regions of the Earth, to achieve the mapping relationship
                  between the location of the terrestrial node and the Earth's surface regions, as shown in Figure 3.</t>
      <figure>
        <name>Geographic division</name>
        <artwork align="center" name="" type="" alt=""><![CDATA[ 
┌---┬---┬---┬---┬---┬---┬---┬---┬---┬---┐
| 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10|
├---+---+---+---+---+---+---+---+---+---┤
| 11| 12| 13| 14| 15| 16| 17| 18| 19| 20|
├---+---+---+---+---+---+---+---+---+---┤
| 21| 22| 23| 24| 25| 26| 27| 28| 29| 30|
├---+---+---+---+---+---+---+---+---+---┤
| 31| 32| 33| 34| 35| 36| 37| 38| 39| 40|
├---+---+---+---+---+---+---+---+---+---┤
| 41| 42| 43| 44| 45| 46| 47| 48| 49| 50|
└---┴---┴---┴---┴---┴---┴---┴---┴---┴---┘
                   ]]></artwork>
      </figure>
      <t keepWithPrevious="true"/>
      <t>Device ID: The identification information of the terrestrial node, which is used to distinguish different nodes in 
                  the same area.</t> 
      <t>After registration, the terrestrial node can obtain the existing registration information in the network from the 
                  registration node.</t>
    </section>

    <section numbered="true" toc="default">
      <name>Encapsulation Address Generation</name>
      <t>Besides address information of the registration node, the satellite orbit information and the access network information 
                  of different satellites should also be pre-configured on the terrestrial nodes. The satellite orbit information 
                  is used to determine the satellite ephemeris, that is, to determine which satellite provides services to the 
                  designated Earth area at a specified time. The access network information of different satellites refers to the 
                  network information used when the satellite is connected to the terrestrial node, and the format has been explained 
                  in the previous section.</t>
      <t>Based on the satellite ephemeris, the access satellite of the remote terrestrial node can be determined at a certain time. 
                  Then, according to the access network of the access satellite and the address information of the terrestrial node, 
                  the access address of the remote terrestrial node can be calculated at a certain time. A typical example is as follows.</t>
      <t>The access satellite's access network and the address information of user is prefixA and prefix1.area_id1 respectively at the 
                  time slot t1. So the corresponding address of user which is applied to communicate with the access satellite is 
                  prefixa.area_id1.device_id1. As shown in Table 3, with the continuous switching of access satellites, the access 
                  address of the user is constantly changing. The GS generates and use these access address of destination user 
                  for data packet transmission. The process of GS source address obtainment is similar with the above description.</t>
        <table anchor="Table-Access-address" align="center">
          <name>Access address of user from t0 to t3</name>
          <thead>
            <tr>
              <th align="center">Time Slot</th>
              <th align="center">Access Address</th>
            </tr>
          </thead>
          <tbody>
            <tr>
              <td align="center">t0-t1</td>
              <td align="center">prefixA.area_id1.device_id1</td>
            </tr>
            <tr>
              <td align="center">t1-t2</td>
              <td align="center">prefixB.area_id1.device_id1</td>
            </tr>
            <tr>
              <td align="center">t2-t3</td>
              <td align="center">prefixC.area_id1.device_id1</td>
            </tr>
          </tbody>
        </table>
      <t>After receiving the data packet from GS, the access satellite of GS parses the destination address of the packet, obtains
                  the prefix informaiton, and queries the destination satellite identifier via this informaiton. Then, the service 
                  satellite of GS encapsulates the original data packet and complete the subsequent transmission using its own 
                  identifier as the source address and the destination satellite identifier as the destination address.</t>
      <t>As soon as the destination satellite receives the data packet, it unencapsulates the data packet and transfers it to the
                  destination ground node. The reverse data transmission process of the destination ground node is similar with the
                  above process, and not tired in words here.</t>
    </section>
    <section numbered="true" toc="default">
      <name>Extensions and Future Works</name>
      <t>In the future work, following problems would be taken in mind:</t>
      <t>(1) Extension of the current routing protocol to support the architecture described in this document.</t>
      <t>(2) Improvement of the routing algorithm presented in this document to consider more network metrics and obtain the optimal
                  path</t>
    </section>
    <section numbered="true" toc="default">
      <name>Security Considerations</name>
      <t>This document discusses one possible satellite ground routing architecture. This architecture adds a new mechanism which is 
                  access satellite prediction, but essentially relies on existing routing protocols. So It has no new security impact.</t>
    </section>
    <section anchor="Acknowledgements" numbered="true" toc="default">
      <name>Acknowledgements</name>
      <t>TBA</t>
    </section>
    <section anchor="IANA" numbered="true" toc="default">
      <name>IANA Considerations</name>
      <t>This document has no IANA actions.</t>
    </section>
  </middle>
  <!--  *****BACK MATTER ***** -->

    <back>
    <references>
      <name>References</name>
      <references>
        <name>Normative References</name>
        <reference anchor="RFC2119" target="https://www.rfc-editor.org/info/rfc2119" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.2119.xml">
          <front>
            <title>Key words for use in RFCs to Indicate Requirement Levels</title>
            <author fullname="S. Bradner" initials="S." surname="Bradner"/>
            <date month="March" year="1997"/>
            <abstract>
              <t>In many standards track documents several words are used to signify the requirements in the specification.  These words are often capitalized.  This document defines these words as they should be interpreted in IETF documents.  This document specifies an Internet Best Current Practices for the Internet Community, and requests discussion and suggestions for improvements.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="2119"/>
          <seriesInfo name="DOI" value="10.17487/RFC2119"/>
        </reference>
        <reference anchor="RFC8174" target="https://www.rfc-editor.org/info/rfc8174" xml:base="https://bib.ietf.org/public/rfc/bibxml/reference.RFC.8174.xml">
          <front>
            <title>Ambiguity of Uppercase vs Lowercase in RFC 2119 Key Words</title>
            <author fullname="B. Leiba" initials="B." surname="Leiba"/>
            <date month="May" year="2017"/>
            <abstract>
              <t>RFC 2119 specifies common key words that may be used in protocol specifications.  This document aims to reduce the ambiguity by clarifying that only UPPERCASE usage of the key words have the defined special meanings.</t>
            </abstract>
          </front>
          <seriesInfo name="BCP" value="14"/>
          <seriesInfo name="RFC" value="8174"/>
          <seriesInfo name="DOI" value="10.17487/RFC8174"/>
        </reference>
      </references>
      <references>
        <name>Informative References</name>
        <reference anchor="I-D.ietf-tvr-use-cases" target="https://datatracker.ietf.org/doc/rfc9657" xml:base="https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.ietf-tvr-use-cases.xml">
          <front>
            <title>TVR (Time-Variant Routing) Use Cases</title>
            <author fullname="Edward J. Birrane" initials="E. J." surname="Birrane">
              <organization>JHU/APL</organization>
            </author>
            <author fullname="Nicolas Kuhn" initials="N." surname="Kuhn">
              <organization>Thales Alenia Space</organization>
            </author>
            <author fullname="Yingzhen Qu" initials="Y." surname="Qu">
              <organization>Futurewei Technologies</organization>
            </author>
            <date day="15" month="April" year="2023"/>
            <abstract>
              <t>This document introduces use cases where Time-Variant Routing (TVR) computations (i.e., routing computations that take into consideration time-based or scheduled changes to a network) could improve routing protocol convergence and/or network performance.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-ietf-tvr-use-cases-00"/>
        </reference>
        <reference anchor="I-D.lhan-satellite-semantic-addressing" target="https://datatracker.ietf.org/doc/html/draft-lhan-satellite-semantic-addressing-03" xml:base="https://bib.ietf.org/public/rfc/bibxml-ids/reference.I-D.lhan-satellite-semantic-addressing.xml">
          <front>
            <title>Satellite Semantic Addressing for Satellite Constellation</title>
            <author fullname="Lin Han" initials="L." surname="Han">
              <organization>Futurewei Technologies, Inc.</organization>
            </author>
            <author fullname="Richard Li" initials="R." surname="Li">
              <organization>Futurewei Technologies, Inc.</organization>
            </author>
            <author fullname="Alvaro Retana" initials="A." surname="Retana">
              <organization>Futurewei Technologies, Inc.</organization>
            </author>
            <author fullname="chenmeiling" initials="" surname="chenmeiling">
              <organization>China Mobile</organization>
            </author>
            <author fullname="Ning Wang" initials="N." surname="Wang">
              <organization>University of Surrey</organization>
            </author>
            <date day="3" month="March" year="2023"/>
            <abstract>
              <t>This document presents a semantic addressing method for satellites in satellite constellation connecting with Internet. The satellite semantic address can indicate the relative position of satellites in a constellation. The address can be used with traditional IP address or MAC address or used independently for IP routing and switching.</t>
            </abstract>
          </front>
          <seriesInfo name="Internet-Draft" value="draft-lhan-satellite-semantic-addressing-03"/>
        </reference>
        <reference anchor="StarLink" target="https://en.wikipedia.org/wiki/Starlink">
          <front>
            <title>Starlink</title>
            <author/>
            <date/>
          </front>
        </reference>
        <reference anchor="KUIPER" target="https://tinyurl.com/bs7syjnk">
          <front>
            <title>Amazon receives FCC approval for project Kuiper satellite constellation.</title>
            <author initials="" surname="">
              <organization/>
            </author>
          </front>
        </reference>
        <reference anchor="ThreeGPP" target="https://www.3gpp.org/">
          <front>
            <title>3GPP</title>
            <author/>
            <date/>
          </front>
        </reference>
        <reference anchor="Large-Scale-LEO-Network-Routing" target="https://ojs.wiserpub.com/index.php/CNC/article/view/2105">
          <front>
            <title>Large Scale LEO Satellite Networks for the Future Internet: Challenges and Solutions to Addressing and Routing," Computer Networks and Communications, 1(1), 31-58</title>
            <author/>
            <date/>
          </front>
        </reference>
      </references>
    </references>
  </back>
</rfc>
