Subject: [alto] another use case should be considered in designing inter-ALTO communication.

From: ChenGuohai <[email-masked]>
Date: Tue, 31 Mar 2015 07:16:47 +0000

Piotr, Sebastian, Wendy, Richard and all
 
Piotr mentioned the topic of inter-ALTO communication on 22 Mar. 
I think that is a practical problem should be resolved in ALTO deployment and am writing to offer another usecase that should be considered in designing inter-ALTO communication.
For scalability there should be multiple ALTO servers in one carrier domain and an ALTO server is responsible for a part of network. For a long route calculation such as from one PID in San Diego to other PIDs in Atlanta, an ALTO client has to get all the topology information from all ALTO servers and Traverse the huge topology information. The procedure is a big burden for ALTO client because that the information is huge and  transporting and processing of this information is time-consuming.
So I think there should be multi-level ALTO servers, which are child ALTO servers and parent ALTO servers. Child ALTO servers are responsible for the request that source PID and destination PID are local. Parent ALTO servers are responsible for request that source PID is in one child and the destination PID is in a different child. This is some similar to hierarchical PCE （https://tools.ietf.org/html/draft-lopez-pce-hpce-ted-02）
---------------------------
                                                                                                           Parent ALTO server
                                                                                                                          |
                                                                                                                          |
                                                             -------------------------------------------------------------------
                                                             |                                                                                                          |        
                                                             |                                                                                                          |        
                                              Child ALTO server   A                                                                          Child ALTO server B
                                                （PIDA1 ，….PIDAm）                                                                       （PIDB1,……..PIDBn）
 -------------------------------
If the source PID is PIDAi and destination PID is PIDBj then this request should be processed by parent ALTO server. And there should be some communication between child ALTO server and parent ALTO server.
BR
Guohai