1

MAKERERE UNIVERSITY

ISP INTERCONNECTIVITY IN

Namuddu Caroline 14/U/12191/PS and Matovu Ronald/ 14/U/123456

A proposal submitted in partial fulfilment of the requirements for the award of Degree of Bachelor of Science in Computer Engineering of the College of Engineering, Design, Art and Technology, University.

Date of Submission: May, 2018

2

3

Dedication

This project is dedicated to my parents, Mr. and Mrs. Mugerwa for the staunch and stern provision they have made to and for me through the years. For the hope they have in me and the dreams I hold, for the encouragement and correction they have given me.

4

Acknowledgement

It is with deepest gratitude that I appreciate the unwaveringly supportive efforts made by my supervisor, Eng. Diarmuid O’ Briain, and my co-supervisor Mr. Jonathan Serugunda who offered all form of consultation in my endeavours with this research project.

I would like to greatly thank Ronald Matovu my project partner a student of Computer Engineering at , for the unconditional help and assistance he offered during the entire project.

I would still like to thank netlabsUG Research Centre for all the assistance they offered in terms of equipment, that enabled us build our testbed and providing us with same to effectively carry out our research for project.

Unimaginable thanks to my parents for the moral, financial and emotional support they have given through the four years.

I would like to thank and appreciate all the lecturers I have gladly had the honour of being taught by.

I would like to thank God for the precious gift of life and strength.

5

Table of Contents List of Tables ...... 6 List of Figures ...... 6 List of Abbreviations ...... 8 Definition of Key Terms ...... 9 Abstract ...... 10 1. INTRODUCTION ...... 11 1.1 Background of the project ...... 11 1.2 Research Problem ...... 12 1.3 Purpose ...... 13 1.4 Research Question or Hypothesis ...... 13 1.5 Significance of project ...... 14 1.6 The Scope of the project ...... 14 2. LITERATURE REVIEW...... 15 2.1 Introduction ...... 15 2.2 Peering Relationships ...... 15 2.3 Autonomous systems (AS) ...... 16 2.3.1 Border Gateway Protocol ...... 17 2.3.2 Route Server (RS) ...... 18 2.4 Summary ...... 19 2.5 Conclusion ...... 19 3. METHODOLOGY ...... 20 3.1 Introduction ...... 20 3.2 Research Design ...... 20 3.3 Population and Sampling ...... 21 3.3.1 Target population ...... 22 3.3.2 Testbed...... 22 3.3.4 Tests ...... 28 3.4 Data Collection ...... 48 3.4.1 Instrumentation...... 49 3.5 Quality Control ...... 49 3.6 Data Analysis ...... 50 3.7 Assumptions and Limitations ...... 50 3.8 Ethical considerations ...... 50 4. DATA PRESENTATION, ANALYSIS & INTERPRETATION ...... 51 4.1 Introduction ...... 51 4.2 Build a BGP and IXP testbed ...... 51 4.3 Characterise and map inter-domain peering between various ISPs within Uganda 52 4.4 Evaluate the presence of the Ugandan ISPs at African eXchange...... 55 4.5 Analyse the impact of deployment of CDNs and caching proxies at the UIXP ..... 60 4.6 Assess the impact of keeping local traffic local...... 65 5. DISCUSSION OF RESULTS ...... 69 5.1 Introduction ...... 69 5.2 Characterise and map inter-domain peering between various ISPs within Uganda ...... 69 5.3 Evaluate the presence of the Ugandan ISPs at other African eXchanges ...... 70 5.4 Analyse the impact of deployment of CDNs and caching proxies at the UIXP ...... 70 5.5 Assess the impact of keeping local traffic local ...... 71 6. CONCLUSIONS AND RECOMMENDATIONS ...... 73 6.1 Introduction ...... 73 6

6.2 Conclusion ...... 73 6.3 Recommendations ...... 75 7. REFERENCES AND BIBLIOGRAPHY ...... 76 8. APPENDICES ...... 78 8.1 Budget ...... 78 8.2 Time Framework ...... 79 8.2.1 Proposed Time Framework ...... 79 8.2.2 Actual Time Framework ...... 80 9. Appendix ...... 81 9.1 Instruments ...... 82 9.1.1 Mapping Tools ...... 82 9.1.2 Origin Locator Tools ...... 82 9.1.3 Testbed Tools ...... 82 9.1.4 IP/Geo location Tools ...... 82 9.1.5 BGP Routing Information Tools ...... 82 9.1.6 Online Survey Tools ...... 83 9.1.7 Latency Tools ...... 83 9.2 Other relevant information ...... 83

List of Tables

Table 1: Survey summary ...... 48 Table 2: Table showing Average AS_PATH LENGTH ...... 53 Table 3: Table showing Origin of ISPs at the UIXP ...... 56 Table 4: Table showing Internet eXchange count of ISPs ...... 58 Table 5: UIXP Membership trends ...... 62 Table 6: Most popular sites visited by Ugandans on the Internet ...... 66 Table 7: Latencies to commonly visited sites on the Internet ...... 67 Table 8: Graph showing latency to commonly visited sites by Ugandans ...... 68

List of Figures

Illustration 1: Testbed ...... 22 Illustration 2: BGP Testbed ...... 27 Illustration 3: Africa Online, AS29039 ...... 29 Illustration 4: Limited, AS36991 ...... 29 Illustration 5: Bandwidth and Cloud Services Group Ltd, AS37273 ...... 30 Illustration 6: CMC Networks, AS25818 ...... 30 Illustration 7: DatanetLLC, AS29032 ...... 31 Illustration 8: Gilat Satcom, AS12491 ...... 31 Illustration 9: Infocom Ltd, 36997 ...... 32 Illustration 10: Internet Solutions (Kenya), AS12556 ...... 32 Illustration 11: MTN Uganda, AS20294 ...... 33 Illustration 12: New Frontiers Technology Consults Limited, AS37610 ...... 33 Illustration 13: National Information Technology Authority Uganda, AS327724 ...... 34 Illustration 14: WoodyNet, AS42 ...... 34 Illustration 15: Research and Education Network For Uganda, AS327687 ...... 35 7

Illustration 16: Roke Investments International Ltd, AS37063 ...... 35 Illustration 17: Seacom Limited, AS37100 ...... 36 Illustration 18: SimbaNet (T) Limited, AS37100 ...... 36 Illustration 19: SureTelecom Uganda Limited, AS327717 ...... 37 Illustration 20: Smile Communications Ltd, As37122 ...... 37 Illustration 21: Sombha Solutions Store Limited, AS 328015 ...... 38 Illustration 22: Tangerine Limited, AS37113 ...... 38 Illustration 23: Uganda Revenue Authority, AS37679 ...... 39 Illustration 24: , AS21491 ...... 39 Illustration 25: , AS64520 ...... 40 Illustration 26: Afrimax Uganda, AS327744 ...... 40 Illustration 27: Limited, AS37075 ...... 41 Illustration 28: Packet Clearing House, AS3856 ...... 41 Illustration 29: Bandwidth and Cloud Services Group, AS37273 ...... 42 Illustration 30: Smile Communications Limited, AS37112...... 42 Illustration 31: Results from the BGP Testbed ...... 52 Illustration 32: Map of commonly visited sites on the Internet...... 68 List of Graphs Graph 1: Average AS PATH Length (v4) ...... 54 Graph 2: Average AS PATH Length (v6) ...... 54 Graph 3: Graph showing the Origins of ISPs at the UIXP ...... 57 Graph 4: Graph showing Internet eXchange count...... 59 Graph 5: Traffic Patterns at the UIXP 2010 – 2014...... 60 Graph 6: Traffic Patterns at the UIXP 2016...... 61 Graph 7: Traffic Patterns at the UIXP 2017 - 2018 ...... 61 Graph 8: Graph showing membership trends at the UIXP...... 63 Graph 9: Graph showing growth in traffic patterns of selected ISPs...... 63 Graph 10: Graph showing Local Vs International Traffic ...... 64

8 List of Abbreviations

AfriNIC African Network Information Centre AS Autonomous System ASN Autonomous System Number ASP Application Service Provider BIRD Bird Internet Routing Daemon CDN Content Delivery Network eBGP exterior BGP EGP Exterior Gateway Protocol EIGRP Enhanced Interior Gateway Protocol FSM Free State Machine GGC Google Global Cache IGP Interior Gateway Protocol IGRP Interior Gateway Protocol IP Internet Protocol IPv4 Internet Protocol version 4 IPv6 Internet Protocol version 6 IS-IS Intermediate System - Intermediate System ISP Internet Service Provider IX Internet eXchange IXP Internet eXchange Point KIXP Kenya Internet eXchange Point LINX London Internet eXchange Point LXC LinuX Container LXD LinuX Hypervisor NLRI Network Layer Reachability Information OSPF Open Shortest Path Possible PCH Packet Clearing House REN Research and Education Network RENU Research and Education Network for Uganda RFC Request For Comments RIB Routing Information Base RIP Routing Information Protocol RIR Regional Internet Registry RS Route Server RTT Round Trip Time RTT Round Trip Time TCP Transmission Control Protocol UIXP Uganda Internet eXchange Point URA Uganda Revenue Authority US United States (of America) UTL Uganda Telecom Limited

9 Definition of Key Terms

• Latency – It’s the amount of delay (or time) it takes to send [1]information from one point to the next. • Tromboning – This is the act of traffic being routed[2] through Europe and/or the United States, yet its source and destination is local. • Autonomous System (AS) – A collection of IP [3] networks and routers under the control of one entity. • Caching Proxies – is a type [4] of Internet/network caching technique that enables a proxy server to save recent and frequent website/webpage requests and data requested by one or more client machines. • Peering – is a process [5] by which two Internet networks connect and exchange traffic. • Route Server (RS) – exchange of [6] routing information between the members and speed up the peering process for new members. • Content Delivery Network (CDN) – A CDN's mission is to [7] virtually shorten that physical distance, the goal being to improve site rendering speed and performance.

10 Abstract

Network latency has a major impact on performance connecting to commonly visited sites on the Internet.

This project examined the impact of tromboning on latency and hence sought to find the change in traffic patterns and network topology for ASes after the deployment of Caching proxies at the Uganda Internet eXchange Point (UIXP).

Using passive and active techniques of Internet measurement, the project gathered and collected BGP routing data from Looking Glass Servers, Internet eXchange Point (IXP) and company websites.

In addition, the project measured latencies to most commonly visited sites on the Internet by Ugandan users and also used IP/Geolocation tools to find their location.

The project also looked at the historic traffic patterns at the UIXP particularly before and after June 2016 and to November 2017 were Akamai Technologies and Google GCC respectively, deployed at the UIXP.

The project discovered that 6% of the most commonly visited sites by Ugandans on the

Internet are hosted within Uganda with an average latency of 36.6 ms (RTT) while 36% are hosted in the United States with an average latency of 276 ms. South Africa with an average latency of 126 ms, Europe having 25% with an average latency of 250ms and Asia with an average latency of 518 ms.

With the current (April 2018) aggregate peered traffic at the UIXP at a peak of 6Gbps from

300Mbps in April 2016, we have realised a growth of over 1900% all due to the deployment of two CDNs, Akamai and Google GCC and this has led to more bilateral peering relationships between different networks present at the UIXP, hence confirming the hypothesis that either more extensive placement of caching proxies and better peering reduces latency to popular services on the Internet.

11 1. INTRODUCTION 1.1 Background of the project The Uganda Internet eXchange Point (UIXP), consists of a few service providers both Internet and other services like fibre access providers which facilitates the direct peering of service providers and the free exchange of data traffic thus reducing the act of tromboning.

This speeds up network service delivery, improves routing efficiency and increases resilience. Thus reduced latency, reduced costs and increased autonomy is achieved.

Currently the UIXP consists of approximately twenty six (27) members [8] and has of an average of about 6 Gbps traffic. This is due to the arrival of Akamai Cache that was deployed at the UIXP in June 2016 and deployment of the Google Global Cache (GGC) in November 2017. This demonstrates that the deployment of the CDNs at Internet eXchanges boosts Internet Service Provider (ISP) local inter connectivity which increases traffic flow because of the reduced dependence on transit.

Sadly, even with the new advances like the CDNs, the traffic flow is not ideal at the

UIXP, which leaves some space for further improvement in the national Internet eco-system.

Since traffic that is not local, data packets must still make the journey off the continent through Europe and America as most popular services are hosted there thus impacting latency.

This project will suggest solutions to this latency problem through an in-depth study of peering agreements and arrangements between different service providers and map Internet paths thus gaining a snapshot of the current traffic patterns. 1.2 1.3 Research Problem

Network latency has a major impact on performance connecting to commonly visited sites on the Internet.

According to (Gupta et al, 2013) [9], “66.8% of the paths between residential access links and Google cache nodes in Africa leave the continent.” 12

The dynamics of traversing the Internet is quite a complex one. Taking the example of a tier

3 ISP in Uganda solely connected to an international tier 1 ISP. All of its traffic not destined for customers on its own network will transit via the tier 1 ISP and onto the Internet. Should the destination of that traffic be local and the end customer supported by a different tier 2

ISP who has purchased transit from a different tier 1 ISP provider, then this traffic will hairpin to at least the nearest point of intersection of these two tier 1 networks, that could be in Kenya or even back in Europe. This process is referred to as tromboning, a fact that has serious implications on network latency, performance and security.

The Internet should be considered a basic requirement for citizens just like electricity and water, but it is a business for ISPs because the government is not taking the initiative to deliver it to the citizens [10]. The ISPs whose aim for the minimum possible expenditure, but with tromboning the cost of the Internet is quite high thus the extra costs incurred are passed on to the customer in the form of higher Internet access fees and therefore do not favour the Ugandan citizen.

To provide the basic need like the Internet to the Ugandan citizen at the lowest possible cost, the latency issues must be solved by attracting more CDNs to the UIXP enabling the act of keeping content local. This also improves user experience.

A map of commonly visited sites on the Internet is required. There is also a need to study the peering relationships between Ugandan ISPs, and determine their presence at selected

IXPs in Africa. 1.4 Purpose The main purpose of the project is to construct a view of Inter domain peering in Uganda and map Internet paths to commonly visited sites on the Internet.

In order to achieve this purpose active and passive measurements will be carried out:

• Route measurement and analysis.

• Gathering Border Gateway Protocol (BGP) routing data from global sources. 13

• Studying peering relationships and agreements between ISPs in Uganda.

Specific Objectives The project specifically intends to undertake the following activities:

• Build a testbed to explore BGP and IXP and therefore gain a greater and deeper

understanding of the workings of the key infrastructure involved in the delivery of

the Internet.

• Characterise and map inter-domain peering between various ISPs within Uganda.

• Evaluate the presence of Ugandan ISPs at African IXPs.

• Analyse the impact of deployment of CDNs and caching proxies at an IXP and thus

the impact of keeping local traffic local.

• 1.5 Research Question or Hypothesis

This study considered the supposition below as a starting point for further investigation.

“Better peering between ISPs and/or more extensive deployment of caching proxies and CDNs or both will reduce latency to popular services.”

1.6 1.7 Significance of project

The aim of the project has been to outline steps to reduce tromboning through better peering at the UIXP and attracting more CDNs to the UIXP. Over the last 15 [8] months the traffic patterns at the UIXP demonstrated a major increase of 1900% which is demonstrated by an increase in the eXchange throughput from 300Mbps to 6Gbps realised in 2018. This was in the main due to the deployment of Akamai Technologies CDN and the GGC. This justifies the project’s supposition which supports the need for further deployment of CDNs at the UIXP. 14

1.8 The Scope of the project

ISP interconnectivity in Uganda as a project run from September/2017 to May/2018, a period of approximately nine months. The methodology consisted of using scientific methods which included passive measurements of collecting BGP routing data from already existing sources and active measurements which involves probing BGP data.

The project also included conducting online surveys which included sending on-line survey forms to the network administrators of the various ISPs. Also interviews were conducted with the UIXP staff.

These activities were carried out;

• Constructing a BGP and IXP testbed.

• Route measurements and analysis. Using ping, mtr --report, and the whois databases.

• Data was collected data through Looking Glass Server, Hurricane Electric to obtain

BGP Routing information.

• The project also collected information through on-line surveys.

The project aimed to construct a view of Internet pathways between various destinations in

Africa and selected sites globally. 2. LITERATURE REVIEW 2.1 Introduction

This chapter covers the literature that enabled the researchers in gaining a deeper understanding with the issues concerned with ISP connectivity in Uganda, like peering relationships, AS and also the different protocols involved such as BGP. It also enlightens the researchers on the function of RS, and developed a detailed picture on how IXPs operate a well as how traffic is passed between higher tier ISPs. It also covers how tromboning affects performance in terms of network latency, costs and autonomy. It further focuses on the construction of a view of Internet paths between Uganda and selected sites globally. 15

2.2 Peering Relationships

Peering relationships are established between different ASes to connect with each other. Peering is when a pair of ASes establish a reciprocal agreement to connect and exchange traffic and Network Layer Reachability Information (NLRI) with each other either on a free of charged basis. Based on the assumption that each has an interest in connecting to the other’s customers.

Tier 1 ISPs are those that do not have [3] to pay any other network for transit. They peer with all other tier 1 networks (there are only about fourteen of these worldwide) to form a default free zone exchanging traffic for free, given any Internet Protocol (IP) address, a tier 1 ISP will be able to connect directly to a top-level ISP that can route to that address.

A Tier 2 is one that needs to [3] purchase transit to connect to at least some part of the Internet. Because of transit fees, many tier 2 ISPs will try to establish peering relations directly with as many tier 1 and other tier 2 ISPs as they can so they can exchange traffic with those ISPs on a no fee basis.

A Tier 3 ISP purchases upstream traffic from a tier 2 ISP or tier 1 ISP and should also establish peering relations[3] with other ISPs to exchange traffic at no or reduced cost in order to reduce on their overall transit cost. Peering can occur in one of the three methods shown below;

• Transit is a costed service to send traffic to an upstream peer. Tier 1 ISPs carry

transit for tier 2 and tier 3 ISPs.

• Mutual Peering is when a pair of ASes connect with each other to exchange traffic

without charge. The assumption is that there is mutual benefit for each to connecting

to each other.

• Large Customer relationships exist between an ISP and a customer. Routes sourced

from paying customers who are large enough to have their own AS and IP ranges

from the Regional Internet Registry (RIR), in the case of East Africa this is African

Network Information Centre (AfriNIC). 16

2.3 Autonomous systems (AS) An AS is a set of routers under a single technical administration [3], using an Interior Gateway Protocol (IGP), like Open Shortest Path First (OSPF) and common metrics to determine how to route packets within the AS.

Each ISP manages the IP space for its customers and aggregates routing information on their behalf to other ISPs and IXP in neighbouring ASes.

The AS represents a connected group of one or more blocks of IP addresses, called

IP prefixes, that have been assigned to that organisation and provides a single routing policy to systems outside the AS.

Each ISP as a single technical administration entity represents an AS and therefore is assigned a unique Autonomous System Number (ASN), a 32-bit or 16-bit number described by RFC4893 [11] and RFC4271 [12] respectively. If an AS exchanges routing information with other ASes on the public Internet, it needs to have a unique ASN. This number is used when exchanging Exterior Gateway Protocol (EGP) routing information, particularly to identify paths through multiple ASes via BGP.

AS numbers are assigned to organisations by the RIR for their country for example

AfriNIC. Using the inter-AS routing protocol BGP version 4 (BGP v4) the ISPs exchange

NLRI with each other. Such BGP relationships are called BGP peering sessions. 2.3.1 Border Gateway Protocol

BGP is a routing protocol used to exchange routing information between different

[13] ASes. It was designed as an EGP that provides a speaking system to exchange destination-based traffic and forwarding NLRI over Transmission Control Protocol (TCP) port 179 [12].

BGP is a standardised EGP, as opposed to Routing Information Protocol (RIP), OSPF, Interior Gateway Routing Protocol (IGRP), Enhanced Interior Gateway Routing

Protocol (EIGRP) and Intermediate System - Intermediate System (IS-IS) which are Interior

Gateway Protocols (IGP). BGPv4 is the current standard deployed. BGP is considered a 17

“Path Vector” routing protocol and was not built to route within an AS, but rather to route between ASes.

BGP maintains a separate routing table based on shortest AS Path and various other attributes, as opposed to IGP metrics like distance or cost. BGP is the routing protocol of choice on the Internet. Essentially, the Internet is a collection of interconnected Ases using

BGP to communicate.

Each BGP speaker [13] maintains a Routing Information Base (RIB) that stores routing information it learns from other peer BGP speakers, local routing information to which local policies have been applied and the information the BGP speaker will share with other BGP peers via advertisements. Advertisements share the following main attributes as well as a number of other optional attributes:

• ORIGIN: defines the origin of the path information. It is never altered as it passes

through BGP speakers.

• AS_PATH: sequence of AS path segments through which the routing information

carried in an UPDATE message has passed.

• NEXT_HOP: defines the IP address of the next hop router.

BGP is primarily used for learning large volumes of Internet routes. Due to the need to form neighbour [13] relationships BGP requires the network administrator to statically assign neighbours unlike with IGPs that dynamically learn who their neighbours are by the exchange of “HELLO” packets.

At IXPs, BGP provide Service Providers the facility to inter-connect. This is typically provided by a shared layer 2 switched network or an even better service can be offered where the IXP establishes a RS that acts to reflect routes received from each member to each of the other members. 2.3.2 Route Server (RS) A RS operates in a similar fashion to a Route Reflector, it accepts exterior [8] BGP 18

(eBGP) peers. It reflects the received prefixes from each peer to all the other eBGP peers connected to the RS. This is called a multilateral interconnection, one eBGP peering connection from each peer and each peer receives the prefixes from all the other peers. The

RS operates as a specialised router that is a eBGP speaker and peers with each router however it does not participate in any routing or forwarding. It is transparent and unlike a router it passes on received prefixes unmodified, in that it does not prepend its own AS number to the AS_PATH as a router would do. The NEXT_HOP and MED attributes are also passed on unmodified between the RS and its eBGP peers. 2.4 2.5 Summary

This literature review expanded the research teams knowledge regarding peering relations and agreements, the different ISP tiers, ASes and the understanding of the working of the RS. It has focused on the study and analysed BGP routing data at the heart of the analysis of peering relationships between different ASes. This provides the team with the necessary knowledge to implement the methodology which includes using, Looking Glass

Servers and so many other tools as sources of BGP routing data. 2.6 Conclusion

The knowledge acquired through the review of the literature in the chapter above.

3. 4. METHODOLOGY 4.1 Introduction This chapter develops the practical parts of the project and different scientific methods are used to achieve the desired objectives. This involved passive measurement which included obtaining BGP routing information from already existent sources like

Hurricane Electric, Peering DB, the UIXP websites to mention but a few. 19

Active measurements were also be performed which involved the probing of BGP data by using tools like ping which involve sending data packets a given destination in order to determine the Round Trip Time (RTT). Also using mtr --reports to determine the latencies and the WHOIS database to determine the origin of the different sites.

The project also carried out on-line surveys which were shared with the Network

Administrators of the different ISPs, that are present at the UIXP.

The Project team conducted meetings with the concerned parties to obtain actual source information instead of relying on simulations.

The project developed a BGP and IXP testbed to enable deeper understanding of the

BGP infrastructure . 4.2 Research Design

Firstly, the process was systematic in order to achieve the objectives in an effective manner, scientific because there was the use of mathematical formulas and assumptions to achieve the best results. These included use of tabulations and graphs for data representation. Specific procedures were followed to achieve the best results and iterations were involved to obtain average results especially maximise accuracy.

The process also involved using simulation software like Network Training

Emulator (NTE) Emulator to enable the construction of the peering architecture of the ISPs in Uganda.

The Research Design will take on the structure as shown in the diagram below.

Drawing 1: Research Design 20

4.3 Population and Sampling

Ideally, all the ISPs and IXPs across the world, Africa and Uganda would have been considered for the best results but due to the complexity of the Internet, mapping all Internet paths from Uganda to the commonly visited sited in the world was not achievable within the timescale of the project.

It was decided to first obtain the top 50 most commonly visited sites in Uganda as per Alexa.com and Simpler web. This site list was further reduced to 35 sites in order to provide the most accurate actual location due to the IP/Geo locator tools inaccuracy tendency. Thus the 35 websites that were selected presented consistent results for all the five tools and these included;

• IP2 Location

• ipinfo.io

• EurekAPI

• DB – IP

• Max Mind

The projected also focused on the ISPs that were present at the UIXP as a sample space in order to analyse their peering relationships.

Within the UIXP focus was made upon the two CDNs of Akamai Technologies and

Google GGC to analyse the impact of their deployment on the traffic patterns at the UIXP and the peering relations between ISPs in Uganda.

UIXP as the national and only Ugandan IXP was the primary focal point. 4.3.1 Target population

The target population was Uganda with a major focus on the UIXP [14] as our main

Internet site of reference. In order to acquire a snapshot understanding of the traffic patterns of Ugandan users to help suggest better peering agreements between the ISPs in Uganda 21 and also find ways of keeping content local by encouraging and attracting more CDNs to

Uganda and the UIXP. 4.3.2 Testbed 4.3.3

Illustration 1: Testbed

testbed design

The testbed design was influenced by the The MikroTIk Access Tier ISP, considering upstream connectivity workshop . It consisted of three ISPs (1,2 and 3) where ISP2 and ISP1 were interconnected at the IXP switch with a Bird Internet Routing Daemon

(BIRD) as the route server. Each of these ISPs were assigned ASNs which niquely identifying them and their different blocks of IPv4 and IPv6.

In order to establish the actual testbed the following procedure was strictly followed;

22

RS Configuration

• All existing information on the router was erased and the device was renamed.

• Installed [15] the Ubuntu Linux Server 17.10 using Oracle VirtualBox Hypervisor

and the enp03 interface was assigned both IPv4 and IPv6 addresses.

• Network configuration was completed.

• Installed LinuX Hypervisor/LinuX Container (LXD/LXC) by creating an lxd group

and adding ubuntu as a user which was followed by booting of the server.

• Initialised LXD.

• Container configuration which involved creation of Ubuntu 17.10 Artful container

and proper editing of profiles was completed.

• Edited the network profile.

• Configured the rs LXC container to support the RS.

• Established Locales.

• IP addressing was completed.

• Backup image for use again.

• Installed [16] BIRD.

• Configured BIRD accordingly and the ubuntu user added to the bird group.

• IPv4 configuration was completed by adding it to bird.conf file.

• IPv6 configuration was completed by adding it to bird6.conf files.

• Enable and Start the BIRD Daemons.

• Check the BIRD Server.

ISP1

The following steps where taken to establish ISP1[[CN]]. 23

• Enabled the IPv6 package.

• The configuration was reset to erase the router of the old configurations.

• The System was identified by assigning it ISP1 as a name, ASN 5111 and router-id

200.1.1.1 as loopback through BGP.

• Initial IP addressing for transit.

• BGP Configuration was completed.

• Created BGP ingress Filters for transit.

• Created BGP egress Filters to enable advertisement filtering thus enabling

advertisement to specific local networks.

• Added BGP Peers for transit which included the IXP route server to enable peering

at the IXP and also ISP3 for both IPv4 and IPv6.

• Confirmed routing with transit ISP3.

• IXP Switch Configuration was completed.

• IP Address [15] on IXP interface.

• Added IXP Route Server as a BGP Peer.

• Confirmed peering with IXP.

The other ISPs were established in the exactly the same way following the procedures for ISP1 above apart from from the fact that ISP3 wasn't connected to the IXP switch.

ISP2

For ISP2 the exact same process was followed as hasd been used to configure ISP1 but the following adjustments were made [[CN]]; 24

• The system was identified by assigning it ISP2 as a name, ASN 5222 and router-id

200.2.2.2 as a loopback through BGP.

• Except ISP2 does not ISP3 as it’s peers only the route server. ISP3

ISP3 configuration proved to be a stripped down version of that used in ISP1 and

ISP2 because this ISP did not have a connection to the IXP.

• IPv4 and IPv6 packages were enabled [[RM]].

• The old configurations were erased, and the router named ISP3, ASN 5333 and

loopback address 200.3.3.3 using BGP.

• The rest of the procedure was the same as for ISP1 and ISP2 except that BGP peer

links were created for IPv4 and IPv6 to ISP1 (ASN5111) as the remote AS.

IXP Switch configuration

The following steps were carried out [[RM]].

• The configuration was reset.

system reset-configuration no-defaults=yes

• The system identity was added.

system identity set name=IXP_SW

25

• A switch was created from ports 2, 3 & 4 as follows.

interface ethernet set 1 name=ether2_ISP1 interface ethernet set 2 master-port=ether2_ISP1 name=ether3_ISP2 interface ethernet set 3 master-port=ether2_ISP1 name=ether4_IXP_CORE interface ethernet set 4 master-port=ether2_ISP1

• A mirror port was created to monitor traffic.

interface ethernet switch set 0 mirror-source=ether4_IXP_CORE mirror-target=ether5

After everything was established the various ISPs were connected to the switch and the following was discovered.

As an example a result like this appears.

routing bgp peer print Flags: X - disabled, E - established # INSTANCE REMOTE-ADDRESS REMOTE-AS 0 E ASN5111 199.5.5.33 5333 1 E ASN5111 2a99:5:5::33 5333 2 E ASN5111 199.9.9.1 5999 3 E ASN5111 2a99:9:9::1 5999

ip route print Flags: X - disabled, A - active, D - dynamic, C - connect, S - static, r - rip, b - bgp, o - ospf, m - mme, B - blackhole, U - unreachable, P - prohibit # DST-ADDRESS PREF-SRC GATEWAY DISTANCE 0 ADC 199.1.1.0/24 199.1.1.1 ether2 0 1 ADb 199.2.2.0/24 199.9.9.22 20 2 ADb 199.3.3.0/24 199.5.5.33 20 3 ADC 199.5.5.0/24 199.5.5.11 ether5 0 4 ADC 199.9.9.0/24 199.9.9.11 ether1 0 5 ADC 200.1.1.1/32 200.1.1.1 loopback0 0

The stable entry labelled ‘ADb’ demonstrated that these routes were learnt from the

RS using BGP.

26

These were the following states that were observed;

Illustration 2: BGP Testbed

Idle State: This [17] state Refuses all incoming BGP connections and starts the initialisation of event triggers, by initiating a TCP connection with its configured BGP peer.

Connect State: Waits for successful TCP negotiation with peer and sends an Open message to peer and changes state to Open Sent.

Active State: If the router fails to setup a successful TCP session, then it ends up in the Active state.

OpenSent State: BGP [17] Free State Machine (FSM) listens for an Open message from its peer and checks for validity to avoid errors. If none is present a Keepalive message is sent, and the state is changed to OpenConfirm.

OpenConfirm State: The [17] peer is listening for a Keepalive message from its peer. If a Keepalive message is received and no timer has expired before reception of the Keepalive, BGP transitions to the Established state.

Established State: In this state, the peers send Update messages to exchange information about each route being advertised to the BGP peer.

27

4.3.4 Tests

The tests were both active measurement tests and passive measurement tests. Passive Measurements

Under passive measurements data was obtained and collected from already existent sources, like;

• UIXP websites

• Hurricane Electric

• PeeringDB UIXP Website

The project obtained the members that are present and the UIXP, some of the members peering policies and the port costs plus the port capacity of the different

ISPs[[RM]] Hurrucane Electric

The project determined the number of Internet eXchanges each ISP was present at.

The project also determined the average AS_PATH LENGTH of each ISP present at the

UIXP as well as the peers of each ISP from the routing tables of IPv4 and IPv6.

While determining the number of Internet eXchanges the ISPs participate at the following activities were carried out at the following ISPs. The purpose was to determine the origins of the different ISPs present at the UIXP. And those peering at any other eXchanges in Africa and internationally. Uncovering the presence of the Ugandan ISPs at the different African eXchanges was achieved by using Hurricane Electric.net looking at each ISP individually and these where the project’s findings [[CN]].

This was carried out to get a yes/no answer to the question about the presence of the

Ugandan ISPs at any other eXchange in Africa and internationally. And if they are present how interconnected are they?

28

Illustration 4: Africell Uganda Limited, AS36991 Africa Online Uganda

The ISP, AS29039 is only present at the UIXP [18].

Illustration 3: Africa Online, AS29039

Africell Uganda limited

The ISP, AS36991 is also only present at the UIXP [19].

29

Bandwidth and Cloud Services Group Ltd

This ISP, AS37273 is present at four different internet exchanges these include

(KIXP) Kenya Internet Exchange Point in Nairobi, London Internet Exchange Point (LINX)

Extreme LAN in London, LINX Juniper LAN in London and the UIXP in [20].

Illustration 5: Bandwidth and Cloud Services Group Ltd, AS37273

CMC Networks

This ISP, AS25818 is not Ugandan by origin, it is a South African based company.

However it has a pan-African network demonstrated by its presence at twelve different exchanges, including UIXP [21].

Illustration 6: CMC Networks, AS25818

30

Datanet LLC

This ISP, AS29032 of Ugandan origin and its only present at one exchange which is the UIXP[22].

Illustration 7: DatanetLLC, AS29032

Gilat Satcom

This ISP, AS12491 is an Israeli ISP that has a presence in Uganda, it also peers at the UIXP.

Illustration 8: Gilat Satcom, AS12491

31

Illustration 9: Infocom Ltd, 36997 Infocom Ltd

This ISP, AS36997 is Ugandan by origin and is present at the UXIP [23].

Internet Solutions (Kenya)

This ISP, AS12556 is a Kenyan based ISP with a presence in UIXP.

Illustration 10: Internet Solutions (Kenya), AS12556

32

Illustration 11: MTN Uganda, AS20294 Illustration 12: New Frontiers Technology Consults Limited, AS37610 MTN Uganda

This ISP, AS20294 while a subsidiary of the wider multi-national MTN group has a

Ugandan subsidiary ASN and therefore shows as a Uganda origin company that is only present at the UIXP [24].

New Frontiers Technology Consults Limited

This ISP, AS37610 is Ugandan by origin and it is only present at the UIXP [25].

33

National Information Technology Authority Uganda

This is a special ISP, AS327724 in that it is the government network. It is Ugandan

by origin and it is only present at the UIXP [26].

Illustration 13: National Information Technology Authority Uganda, AS327724

WoodyNet

WoodyNet, AS42 is a pseudonym for the United States (US) based Packet Clearing House, Inc. (PCH), an organisation with responsibility for providing operational support

and security to critical Internet infrastructure like IXPs. It therefore has a presence at one

hundred forty four exchanges including UIXP [27]. 34

Illustration 14: WoodyNet, AS42

Research and Education Network For Uganda

Research and Education Network For Uganda (RENU), AS327687 the national

Research and Education Network (REN) is present at the UIXP only [28].

Illustration 15: Research and Education Network For Uganda, AS327687

Roke Investments Ltd

Roke Telecom, AS37063 is a Ugandan ISP with a presence only noted at the UIXP

29]. 35

Illustration 16: Roke Investments International Ltd, AS37063

36

Seacom Limited

Seacom, AS37100 the sea fibre company headquartered in Mauritiu, it has a presence at UIXP and is noted at 18 other exchanges worldwide [30].

Illustration 17: Seacom Limited, AS37100

Simbanet (T) Limited

Simbanet, AS37027 has its origins in Tanzania but it also has a presence at the UIXP

[31].

Illustration 18: SimbaNet (T) Limited, AS37100

37

Illustration 20: Smile Communications Ltd, As37122 Sure Telecom Uganda Limited

Sure Telecom, AS327717 are also only present at the UIXP[32].

Illustration 19: SureTelecom Uganda Limited, AS327717

Smile Communications Ltd

This one is a Ugandan ISP, AS37122 by origin but it is present at three exchanges which include: [33]. • LINX Extreme LAN, London • LINX Juniper LAN, London • UIXP, Kampala

38

Sombha Solutions Store Limited

This ISP, AS328015 is only present at the UIXP.

Illustration 21: Sombha Solutions Store Limited, AS 328015

Tangerine Limited

This Ugandan ISP, AS37113 is also present UIXP [34].

Illustration 22: Tangerine Limited, AS37113

39

Illustration 23: Uganda Revenue Authority, AS37679 Uganda Revenue Authority

The Uganda Revenue Authority (URA), AS37679 is an Application Service

Provider (ASP) who offer on-line services to Ugandan citizens and therefore peer at UXIP

[35].

Uganda Telecom Limited (UTL)

The former incumbent ISP, AS21491 is only present at one exchange which is the

UXIP[36].

Illustration 24: Uganda Telecom, AS21491

40

Illustration 25: UMEME, AS64520 UMEME

Another Ugandan ASP, AS64520 who uses their presence at the UIXP to facilitate services to their customers.

Afrimax Uganda

Afrimax Uganda, AS327744 traded as Vodafone until early in 2018 when it switched to the Hello brand. It has a presence at UXIP [37] however it recently went into receivership and is currently going through a receivership process.

Illustration 26: Afrimax Uganda, AS327744

41

Illustration 27: Airtel Uganda Limited, AS37075 Airtel Uganda Limited

This ISP, AS37075 is only present at one exchange which is the UXIP [38].

Packet Clearing House

PCH, AS3856 has a second peering at UIXP and at 138 other Internet Exchanges

UXIP along with its peering as WoodyNet [39].

Illustration 28: Packet Clearing House, AS3856

42

Since the project focus is on the Ugandan ISPs, the project did not access the non

Ugandan ISPs, yet they were the ones that are mainly present at multiple IXPs.

The project also determined the other eXchanges that these Ugandan ISPs which included Smile Communications Ltd and Bandwidth and Cloud Services Group Ltd by accessing the Internet eXchange tab also labelled Internet eXchange (IX) using Hurricane

Electric as a tool.

We found that only two Ugandan ISPs were present at any IXP other than the UIXP, and these include;

• Smile Communications Ltd

• Bandwidth and Cloud Services Group Ltd Bandwidth and Cloud Services Group Ltd

From the above information the project discovered that of all the twenty ISPs only one, Bandwidth and Cloud Services Group Ltd, AS37273 is present at an African Internet

Exchange apart from the UIXP, which is the Kenya Internet eXchange Point (KIXP).

Illustration 29: Bandwidth and Cloud Services Group, AS37273

Smile Communications Ltd

Smile, AS37122 peer at the UIXP as well as LINX in London. 43

Illustration 30: Smile Communications Limited, AS37112

BGP Average AS_Path Length

While assessing passive measurements the project went ahead to collect average

AS_PATH LENGTH which is an important BGP attribute this was obtained through using a tool called Hurricane Electric.net were the average AS_LENGTH was obtained from the different ISPs routing tables. Commonly visited sites by Ugandan users on the Internet

The project also got the top 50 sites visited by Ugandans from two different websites.

These included Alexa.com and Similar Web. The top 50 sites of each websites were considered and those that were appearing on both websites were chosen. Peers of the differnet ISPs at the UIXP

This was carried out using the following steps;

• Access Hurricane Electric.net.

• Type in the ASN number of the ISP.

• To go the PEERS tab that has both IPv4 and IPv6 and obtained the different

peers that are present at the UIXP.

• The process was repeated for all the 27 members at the results were stored in the

table. Active Measurements

Under active measurements the project went ahead to probe for the BGP routing data using 44 different tools. Origin of the different ISPs at the UIXP

The project also used team Cymru’s whois Database[17] to probe the registries responsible for assigning ASNs to the different ISPs at the UIXP. The information was stored in a text document as shown on the next page [[CN]].

45

AS | CC | Registry | Allocated | AS Name

29039 | UG | ripencc | 2003-05-16 | AFRICAONLINE-UG Africa Online Uganda, UG

36991 | UG | afrinic | 2007-12-04 | ORANGE-, UG

37075 | UG | afrinic | 2008-11-25 | ZAINUGAS, UG

37273 | UG | afrinic | 2010-11-04 | BCS, UG

25818 | ZA | afrinic | 2010-02-10 | CMCNETWORKS, ZA

29032 | UG | ripencc | 2003-05-14 | DATANET-UG DATANET LLC, UG

12491 | IL | ripencc | 1999-06-14 | IPPLANET-AS, IL

36040 | US | arin | 2005-08-03 | YOUTUBE - Google LLC, US

36997 | UG | afrinic | 2007-12-28 | INFOCOM-, UG

12556 | KE | afrinic | 2009-01-15 | internet-solutions-ke, KE

20294 | UG | afrinic | 2009-09-28 | MTN-, UG

07610 | | | | NO_NAME

327724 | UG | afrinic | 2014-01-29 | NITA, UG

42 | US | arin | 2001-05-16 | WOODYNET-1 - WoodyNet, US

3856 | US | arin | 1994-09-26 | PCH-AS - Packet Clearing House, US

327687 | UG | afrinic | 2009-07-15 | RENU, UG

37063 | UG | afrinic | 2008-10-23 | RTL-AS, UG

37100 | MU | afrinic | 2009-05-28 | SEACOM-AS, MU

37027 | TZ | afrinic | 2008-07-10 | SIMBANET-AS, TZ

327717 | UG | afrinic | 2013-12-24 | SureTelecom-UG-AS, UG

37122 | UG | afrinic | 2009-07-29 | SMILE-, UG

328015 | UG | afrinic | 2016-05-10 | Sombha-Solutions, UG

37113 | UG | afrinic | 2009-07-07 | tangerine-ug-as, UG

37679 | UG | afrinic | 2013-07-12 | URA1, UG

21491 | UG | ripencc | 2001-12-31 | UGANDA-TELECOM Uganda Telecom, UG

64520 | | | | NO_NAME

327744 | UG | afrinic | 2014-04-03 | AFRIMAX-UGANDA, UG

46

Path Length • This was carried out over a period of three months and the average was obtained[[CN]]. • The project also carried out mathematical calculations to affirm the BGP values obtained by Hurricane Electric. • The project plotted graphs of the average path lengths. • The also obtained each ISP peers and used NTE to diagrammatically illustrate them. BGP AS_PATH

In calculating the average path length, the project must find the shortest path from a source node to all other nodes contained within the graph. The following mathematical formula was used to obtain the average path length [[CN]].

푁 ∑푙=0 푙푛푙 퐴푎푣 = 푁 ∑푙=0 푛푙 퐴푎푣: 퐴푣푒푟푎푔푒퐴푆푝푎푡ℎ푙푒푛푔푡ℎ 푙: 푝푎푡ℎ푙푒푛푔푡ℎ 푛푙: 푛푢푚푏푒푟표푓푃푟푒푓𝑖푥푒푠푤𝑖푡ℎ푎푙푒푛푔푡ℎ푙

Impact of CDNs AND Caching Proxies at the UIXP

The project sanaysed the impact of the deployment of CDNs and caching proxies at the UIXP [[CN]].

At the UIXP there are two caching proxies to date and these include the GGC from Google deployed in 2017 and the Akamai Technologies CDN which was deployed earlier in 2016. The project analysed traffic patterns before and after the deployment of the CDNs.

These were the activities involved;

• First, the project carried out a survey to inquire if there are any ISPs hosting

CDNs in there networks and unfortunately of the few that replied none hosted a

CDN.

• The project then went ahead to analyse the traffic and the UIXP over the years

from 2014 up to date. 47

• The project then assessed the years where the caching proxies of Google and

Akamai where deployed.

• The project plotted a graph from of membership trends over the years in order

to show how the deployment attract more ISPs at the UIXP.

Obtaining Latencies to commonly visited site by Ugandans

The project involved in the following activities to obtain latencies to commonly visited sites by Ugandan users [[RM]].

• Carried out ping to those particular sites and obtained the average latencies.

• Carried out mtr --report to further obtain latencies to this commonly visited sites.

Here the RTT was considered. This means the time taken from sender to destination and back. This was achived by writing scripts which were ran to obtain the results in bulk.

Using NTE to simulate the peering architecture at the UIXP

The project simulated the peering architecture at the UIXP by using a tool called NTE in order to capture a snapshot understanding of inter domain peering between the different service providers, in terms of peers and transit providers. [[RM]]

Meetings with the different personnel in the field

The project undertook meetings with different parties in the field. An ISP was interviewed and also the chairman and acting Executive Director, Kyle Spencer at UIXP [[CN,RM]] in

November 2017. Focus Points

1. What are the major roles of the UIXP?

2. How do members choose to peer at the UIXP? What is the nature of the traffic they

share? How much do they share? 48

3. What is the nature of the peering agreements at the UIXP?

4. Advice on selection of global sites that host popular content.

5. Advice on selection of African IXP for our project consideration.

6. Advice on the sources of information for our project (sources, contacts, Access).

7. General project advice. Survey

The project also conducted a survey which was addressed to the network administrators of the different ISPs present at the UIXP. This was to obtain responses on issues regarding to

ISP Interconnectivity In Uganda [[CN,RM]].

49

Network Name UIXP Seacom Tangerine SimbaNET UMEME RENU NITA-U ASN AS37386 AS37100 AS37113 AS37027 AS64520 AS327687 327724 Peering Policy Open Open Open Open Selective Selective Open Peering with? Customers, Transit, Transit, Peers Transit Peers, Transit Customers, Transit Peers Peers Peers, Transit What criteria do IXP Open Open Not a Traffic No current you use to choose members customer volume criteria peers "P"? Written and signed Yes No Yes No No No No peering agreements? Does your network Yes Yes Yes Yes No Yes Yes exchange IPv6 routes? What % of you 100% < 0.1%. 5% 2% 100 ~ 40% 30% traffic goes through the UIXP? What % of your 0.00% > 85%. 95% 80% 80 ~ 60% 70% network's traffic is International? Does your Network Akamai, Yes No GGC No No N/A host a CDN cache? GGC (Kenya) Peer with RS or just Bi-lateral Bi-lateral Both RS RS bi-lateral peering at the UIXP? Range of your Not a 0-50 0-50 0-50 150-200 traffic through member Mbps Mbps Mbps Mbps UIXP in April 2016? Range of your 100-150 0-50 0-50 100-150 500-600 150-200 traffic through Mbps Mbps Mbps Mbps Mbps Mbps UIXP in April 2017? Range of your 200-250 50-100 0-50 100-150 1.4-1.6 1.2-1.4 traffic through Mbps Mbps Mbps Mbps Gbps Gbps UIXP in April 2018? Table 1: Survey summary 4.4 Data Collection

Data was collected using simulation applications like NTE and also testbeds were built in to mimic actual BGP infrastructure for a better understanding of the concepts. Actual data was collected from different sources like Hurricane Electric.net regarding data for AS_PATH LENGTH, IXPs and peers, UIXP websites to obtain the members present, peering policies and traffic patterns over years. Alexa.com was used to obtain the commonly visited sites by Ugandans. 50

Also information was got from Team Cymru’s Whois database to obtain the origin and registries responsible for the different ISPs at the Internet eXchange. Latency data was obtained from python scripts implementing ping and mtr-- report.

Location of the commonly visited sites was obtained by use of tools like Google

Maps, IP2Location, MaxMind, EurekAPI and reverse DNS.

Data was obtained from surveys to mainly obtain the reason for the trends in traffic patterns and membership at the UIXP. Non numerical data was also collected from meetings from the appropriate surveys. 4.4.1 Instrumentation

The instruments used in the data gathering process included:

 Interviewing IXP officials, Network Operations Centre (NOC) Engineers.

 Open Source Network Monitoring tools

 IXP Websites, RIRs, RouteViews, PCH, HE, etc.

 Ping, mtr, whois, etc.

 Online Surveys.

 Google Maps, IP/GeoLocation tools like IP2Location, EurekAPI, MaxMind.

 Routers using MicroTik for the Testbed. 4.5 Quality Control

For validity and reliability of data, the test bed was built with precision and simulations were used in order to emulate the actual situations being investigated.

More than one tool was used in order to compare and contrast the data obtained. For example data for the location of commonly visited sites, the coordinates that were used were those produced by all the five different tools reducing the project samples from 50 websites to 35. This was done to obtain accuracy.

For the BGP AS_PATH LENGTH an average value was considered and this was obtained from data collected over a period of three months to obtain high accuracy levels. 51

4.6 Data Analysis

Data analysis was scientific, which included use of graphs and tables to represent the project findings in order to enable easy and efficient interpretation and representation of the data and the findings. Tools like NTE enabled simulation efficiency to in order to obtain accuracy. 4.7 Assumptions and Limitations

Due to the changing nature of the Internet, the data that obtained was considered a snapshot understanding. The analysis, interpretation and conclusions were based all on this data at a particular point in time.

The project acknowledges that this data can change at any time, and that all the assumptions taken were based on the snapshots obtained during the time the project was carried out. 4.8 Ethical considerations

The interviewees were informed in due time in order for them to prepare for the interviews and the interviews would be conducted in person at the interviewee place of choice mainly using questionnaires with closed ended questions and we will be briefed early enough about the expectations.

No data private or restricted data was obtained without permission and most data used in this project was free access thus open to the public.

The project did not engage in use of illegal software or instruments in order to obtain and analyse data. All the instruments and tools used in the project were open source. 5. DATA PRESENTATION, ANALYSIS & INTERPRETATION

This chapter contains a detailed description of the results obtained after data analysis or it describes the solution developed to solve the problem identified. 5.1 Introduction This project investigated the impact of tromboning on latency and hence reducing 52 latency commonly visited sites through better peering at the UIXP and attracting more

CDNs to the UIXP. This was due to Network latency having a major impact on performance connecting to commonly visited sites on the Internet

According to Gupta et al [9], 66.8% of the paths between residential access links and Google cache nodes in Africa leave the continent. The BGP routing data collected using passive techniques of Internet measurement which involved acquiring the data from already existing sources like Hurricane Electric.net and the UIXP websites. Active Measurements are those that included probing for the BGP routing information through ping, mtr—report and Whois database. The project also carried out an online survey and meetings. The following results were obtained. 6% of commonly visited sites on the Internet are in Uganda with an average latency of 36ms and that was the smallest latency observed compared to those in Europe and America. Thus it is recommended to keep local content local to reduce latencies to commonly visited sites on the Internet. This chapter also shows that better peering attracts more CDNs at the UIXP but also more deployment of CDNs at the UIXP increases traffic patterns, currently with a peak value of 6 Gbps hence better inter domain peering between the ISPs at the Internet eXchanges. 5.2 Build a BGP and IXP testbed

The first objective of the project was to build a BGP and IXP testbed. To achieve this objective the project set up three routers representing the three ISPs and an IXP switch with BIRD as a Route Server. The results are presented. 53

Illustration 31: Results from the BGP Testbed

The established state show that ISP1 ASN 5111 and ISP2 ASN 5222 are up and running and ready to exchange network reachability information. 5.3 Characterise and map inter-domain peering between various ISPs within Uganda

The second objective was to characterise and map inter-domain peering between various ISPs within Uganda. To achieve this objective the AS PATH_LENGTH was obtained and IPv4 and IPv6 peers from Hurricane Electric.net. And used NTE to simulate the peering architecture. The results are presented.

The Table 2 showed the results of the average path length. 54

ISPs AT THE UIXP ASN AS PATH all AS PATH (v4) AS PATH (v6) Africa online 29039 4.418 4.418 0 Africell 36991 4.507 4.507 0 BCS 37273 3.86 3.791 4.2787 CMC 25818 3.848 4.059 3.063 DataNet 29032 4.22 4.22 0 Gilat 12491 4.679 4.722 4.084 Infocom 36997 4.228 4.228 0 Internet Solutions 12556 4.948 5.268 4.128 MTN Uganda 20294 4.466 4.618 4.105 NFT consults 37610 4.893 4.893 0 NITA-U 327724 3.924 3.924 0 PCH Route Data DNS 42 4.049 3.762 4.075 RENU 327687 4.286 4.425 4.056 Roketelkom 37063 4.486 4.675 3.882 SEACOM 37100 3.946 3.998 3.631 Simba net 37027 4.612 4.668 4.022 327717 4.394 4.394 0 Smile 37122 4.494 4.494 0 Sombha Networks 328015 3.863 3.863 0 Tangerine 37113 4.177 4.177 0 URA 37679 5.446 5.446 0 UTL 21491 4.736 4.736 0 UMEME 64520 4.664 4.754 4.438 Vodafone 327744 4.217 4.217 0 Airtel 37075 4.879 4.879 0 PCH Route Data Collector 3856 2.443 2.438 2.449 AKAMAI 20940 4.782 4.905 4.59 Table 2: Table showing Average AS_PATH LENGTH

Hurricane Electric was used to get the average AS_PATH length for all the ISPs present at the UIXP and the results are shown in Table 2.

55

THE AVERAGE AS PATH LENGTH (v4)

AS PATH (v4)

0 Africa online Graph 1: Average AS PATH Length (v4)

THE AVERAGE AS PATH LENGTH (v6)

5 4.5 4 3.5 3 2.5 2 1.5 1 0.5 AS PATH (v6)

0

BCS

UTL

URA

Gilat

CMC

Airtel

RENU

Smile

Africell

NITA-U

UMEME

Infocom

AKAMAI

DataNet

SEACOM

Vodafone

Tangerine

Simba net

Roketelkom

MTNUganda

Africa Africa online

NFTconsults

Smart telecom

PCH PCH RouteData… PCH RouteData… Internet Solutions Sombha Networks Graph 2: Average AS PATH Length (v6)

The table below shows the peers each ISP at the UIXP. These results were collected from both the survey which we conducted to evaluate the peering relationships at the UIXP for the ISPs of Ugandan Origin, and also from Hurricane Electric. 56

The table also includes the policies of peering which include open, selective and restrictive according to the ISPs choice. The peering architecture was as demonstrated in Drawing 2. Red lines show peering at a cost either customer or transit and green means peers. The ISPs in the yellow area show that they peer with the Route Server which is like a mirror to reflect all the BGP data it obtains so that it is accessible to all the networks connected to it. [[RM]]

ISPs like Seacom, Liquid Telecom and Google GGC don't peer with the RS due to the their policies and because most of the ISPs at the UIXP are their customers which is shown by the red lines thus would not freely exchange with them their traffic.

Drawing 2: Peering Architecture at the UIXP

5.4 Evaluate the presence of the Ugandan ISPs at African eXchange.

The third objective of the project was to evaluate the presence of the Ugandan ISPs at African eXchanges. To achieve this objective data was collected from Hurricane

Electric.net. ISPs present at multiple eXchanges were obtained and the Internet eXchanges were identified. The results are presented; [[CN]]

Since we were mainly focusing on the Ugandan ISPs, we did not access the non 57

Ugandan ISPs, yet they were the ones that are mainly present at multiple Internet eXchanges.

In order to achieve our objective of characterizing and mapping the peering relationship of Ugandan ISPs at the different African Internet eXchanges.

We discovered that only Bandwidth and Cloud Services Ltd was present in Kenya at KIXP and London which is not an African Exchange.

Smile which was present at multiple Internet Exchanges which were mainly outside

Africa specifically in Europe. Table 3shows the origin of all the ISPs at the UIXP.

ISPs at the UXIP Origin ISPs at the UXIP Origin Africa online Uganda SEACOM Mauritius Africell Uganda Simba net Uganda BSC Uganda Smart telecom Uganda CMC South Smile Uganda Africa DataNet Uganda Sombha Networks Uganda Gilat Israel Tangerine Uganda Infocom Uganda URA Uganda Internet Solutions Kenya UTL Uganda MTN Uganda Uganda UMEME Uganda NFT consults Uganda Vodafone Uganda NITA-U Uganda Airtel Uganda PCH Route Data DNS USA PCH Route Data Collector USA RENU Uganda Akamai EU Roketelkom Uganda Table 3: Table showing Origin of ISPs at the UIXP

The graph below shows the representation of the different origins of ISPs at the UIXP. 58

ORIGIN OF ISPs at UIXP

UGANDA SOUTH AFRICA ISRAEL KENYA USA MAURITIUS EU

Graph 3: Graph showing the Origins of ISPs at the UIXP

Focusing on the ISPs of Ugandan origin and evaluated the number of eXchanges they were present at in the table below.

ISPs at the UXIP Origin ASN IXPs Present at Africa online UGANDA 29039 1 Africell UGANDA 36991 1 BSC UGANDA 37273 4 DataNet UGANDA 29032 1 Infocom UGANDA 36997 1 MTN Uganda UGANDA 20294 1 NFT consults UGANDA 37610 1 NITA-U UGANDA 327724 1 RENU UGANDA 327687 1 Roketelkom UGANDA 37063 1 Simba net UGANDA 37027 1 Smart Telecom UGANDA 327717 1 Smile UGANDA 37122 3 Sombha Networks UGANDA 328015 1 Tangerine UGANDA 37113 1 URA UGANDA 37679 1 UTL UGANDA 21491 1 59

UMEME UGANDA 64520 1 Vodafone UGANDA 327744 1 Airtel UGANDA 37075 1 Table 4: Table showing Internet eXchange count of ISPs

Graph 4 shows a graph to demonstrate the ISP with the highest prevalence at other eXchanges.

IXPs Present at NUMBER OF IXPS 4.5 4 3.5 3 2.5 2 1.5 1 0.5 0

Graph 4: Graph showing Internet eXchange count.

60

5.5 Analyse the impact of deployment of CDNs and caching proxies at the UIXP

The fourth objective was to analyse the impact of deployment of CDNs and caching proxies at the UIXP. This was achieved mainly through the online survey and the traffic trends from the UIXP websites. The results are below;

At the UIXP there are two caching proxies to date and these include Google LCC and Akamai which was deployed in 2016 and Google in 2017. We analysed traffic patterns before and after the deployment of the CDNs and these are the following graphs.[[CN]]

The following are the graphs showing the traffic patterns at the UIXP over the years. 61

Graph 6: Traffic Patterns at the UIXP 2016.

Graph 5: Traffic Patterns at the UIXP 2010 – 2014.

As observed the peak traffic was at approximately 7 Mbps in 2010 and by 2014 the traffic had increased to 280 Mbps.

62

In 2016 a peak traffic raising to 1500 Mbps was observed. Graph 7: Traffic Patterns at the UIXP 2017 - 2018

Currently in 2018 the UIXP boasts of approximately 6Gbps.

63

Network Name ASN Uses Route Server Port Speed Joined Africa Online 29039 Yes 1 Gbps 2001 Africell 36991 Yes 1 Gbps 2009 Airtel 37075 Yes 1 Gbps 2009 Akamai 20940 Yes 10 Gbps 2016 Bandwidth & Cloud Services 37273 Yes 1 Gbps 2015 (BCS) CMC Networks 25818 Yes 1 Gbps 2016 Datanet 29032 Yes 1 Gbps 2001 Gilat 12491 Yes 1 Gbps 2016 Google 36040 No 10 Gbps x2 2017 Infocom / Liquid Telecom 36997 No 1 Gbps 2001 Internet Solutions 12556 Yes 1 Gbps 2017 MTN Uganda 20294 Yes 1 Gbps 2001 NFT Consult 37610 Yes 1 Gbps 2013 NITA-U 327724 Yes 10 Gbps 2014 PCH Root DNS (WoodyNet) 42 Yes 100 Mbps 2016 PCH Route Data Collector 3856 Yes 100 Mbps 2016 Research & Education 327687 Yes 10 Gbps 2015 Network for Uganda (RENU) Roke Telkom 37063 Yes 1 Gbps 2011 SEACOM 37100 No 1 Gbps x2 2016 SimbaNet 37027 Yes 1 Gbps 2012 Smart Telecom 327717 Yes 1 Gbps 2015 Smile 37122 Yes 1 Gbps 2015 Sombha Networks 328015 Yes 1 Gbps 2016 Tangerine 37113 Yes 1 Gbps 2010 Uganda Revenue Authority 37679 Yes 1 Gbps 2014 Uganda Telecom 21491 Yes 1 Gbps 2001 UMEME 64520 Yes 1 Gbps 2015 Vodafone 327744 Yes 1 Gbps 2015 Table 5: UIXP Membership trends

The Graph 8 also shows the trends observed in the UIXP memberships using the information obtained from Table 5. The graph also shows the number of ISPs that joined the UIXP over the years and a cumulative increase in the memberships.

64

MEMBERSHIP TRENDS AT THE UIXP OVER YEARS

2017

2015

2013

2011

2009 Cumulative number of Year members present 2007 Number of members joined 2005

2003

2001 0 5 10 15 20 25 30 Members

Graph 8: Graph showing membership trends at the UIXP.

In Graph 9 it can be observe the traffic at the UIXP from April 2016 to 2018 and from the survey we conducted we observe a boost in the traffic patterns for the different

ISPs.

TRAFFIC GROWTH PATTERNS FOR SELECTED NETWORKS AT THE UIXP FOR THE MONTHS OF APRIL

2018 NITA-U RENU 2017

YEAR UMEME SimbaNet

2016 Tangerine SEACOM

0 500 1000 1500 2000 TRAFFIC IN Mbps

Graph 9: Graph showing growth in traffic patterns of selected ISPs.

65

66

Graph 10 illustrates the survey data which observed that most of the ISPs are still mostly dependent on their transit service providers to carry traffic and that there is still very little traffic that is passed through the UIXP.

With the placement of caching proxies and content delivery networks, traffic is boosted because most of the content remains local. This works in a way that once a person make a request for example a you tube video for first time. The request leaves the country and fetches the request from where the server is located.

When the same exact request is made the second time, the request doesn't have to leave the country to look for the server that contains the content, instead it refers to the caching proxy at retrieves the request. This is due to the fact that the first time that particular content was requested, it was stored in a caching proxy awaiting for the next time it will be requested so that it is just retrieved. Thus enabling keeping data local and reduction on the latencies thus improving user experience.

Graph 10: Graph showing Local Vs International Traffic

67

5.6 Assess the impact of keeping local traffic local.

The last objective was to assess the impact of keeping local traffic local. This was obtained by finding latencies to commonly visited sites [18] on the Internet. The following are the results.

The project obtained this information from different websites like Alexa.com and these were ranked among the most popular among Ugandans.

The project also went ahead to determine the latencies of the sites in the table below by writing a script to perform pings and mtr --reports and these results where stored in a text files called json.text.txt.

The results were obtained at stored in a table but the biggest challenge was that the some of the ping tests did not return results but all the results from the mtr --report were obtained.

# Service URL # Service URL 1 Jumia jumia.com 28 live.com 2 Academic Registrar ar.mak.ac.ug 29 instagram instagram.com 3 wattpad wattpad.com 30 betpawa betpawa.ug 4 URA ura.go.ug 31 slideshare slideshare.net 5 UWA ugandawildlife.org 32 nih nih.gov 6 Twitter twitter.com 33 quora quora.com 7 facebook facebook.com 34 msn msn.com 8 Google google.com 35 dailymail dailymail.co.uk 9 ucu ucu.ac.ug 36 softonic softonic.com 10 youtube youtube.com 37 nitaug nita.go.ug 11 yahoo yahoo.com 38 mozilla mozilla.org 12 wikipedia wikipedia.org 39 office office.com 13 monitor news monitor,co.ug 40 beforward beforward.jp 14 Uber uber.com 41 theugandanjobonline theugandanjobline.com 15 streaming flashscore.com 42 wordpress wordpress.com 16 news newvision.co.ug 43 howwebiz howwe.biz 17 bussiness binarybussinessbay.com 44 microsoft microsoft.com 18 news bbc.com 45 newsnow newsnow.co.uk 19 savefrom savefrom.net 46 blogspot blogspot.ug 20 search engine ask.com 47 piratebay thepiratebay.org 68

# Service URL # Service URL 21 microsoft microsoft.com 48 olx olx.co.ug 22 deloton deloton.com 49 pinterest pinterest.com 23 profession linkedIn.com 50 betin betin.co.ug 24 stackoverflow stackoverflow 51 myway myway.com 25 nssf nssfug.org 52 ghafla ghafla.com 26 caa caa.co.ug 53 researchgate researchgate.net 27 whatsapp whatsapp.com 54 fortebet fortebet.up Table 6: Most popular sites visited by Ugandans on the Internet

Service URL IP hop count mtr ping Jumia jumia.com 104.16.69.46 12 123.1 123.2 Academic Registrar ar.mak.ac.ug 196.43.132.132 3 0.6 0.6 wattpad wattpad.com 104.16.108.12 12 123.4 12 URA ura.go.ug 196.10.228.59 14 54.9 55.5 UWA ugandawildlife.org 109.199.96.28 22 307.5 307.7 Twitter twitter.com 104.244.42.1/65 14 226.9 227.4 facebook facebook.com 185.60.219.35 14 123.3 123.2 Google google.com 216.58.223.14 13 124.9 125 ucu ucu.ac.ug 50.30.47.19 17 338.9 youtube youtube.com 216.58.223.46 13 124.7 125.1 yahoo yahoo.com 98.138.219.231 21 318 320.6 wikipedia wikipedia.org 91.798.174.192 13 213.7 monitor news monitor,co.ug 82.112.114.21 19 221.8 Uber uber.com 104.36.195.196 19 314.1 312.2 streaming flashscore.com 188.92.40.78 17 234.3 235.9 news newvision.co.ug 128.199.114.53 29 541.1 bussiness binarybussinessbay.com 141.8.192.26 17 256.7 256.9 news bbc.com 151.101.128.81 15 213 savefrom savefrom.net 146.185.29.109 13 236 236.2 search engine ask.com 2.20.175.120 13 214.1 microsoft microsoft.com 23.100.122.175 24 353.3 deloton deloton.com 194.187.98.167 14 213.4 213.2 profession linkedIn.com 108.174.10.10 19 375.6 stackoverflow stackoverflow 151.101.65.69 15 213.7 213.7 nssf nssfug.org 192.232.202.163 28 378.1 378.6 caa caa.co.ug 77.104.152.244 22 307.8 whatsapp whatsapp.com 173.236.228.209 14 119.7 live.com 204.79.197.212 14 123.9 instagram instagram.com 52.4.139.198 27 311.5 313.8 betpawa betpawa.ug 195.201.72.26 16 222.2 222.1 slideshare slideshare.net 108.171.10.19 17 351.8 315.5 69

Service URL IP hop count mtr ping nih nih.gov 54.235.145.228 26 312 300.3 quora quora.com 192.229.182.210 13 222.6 222.2 msn msn.com 13.82.28.61 19 326.1 dailymail dailymail.co.uk 2.17.248.8 9 54.5 54.8 softonic softonic.com 46.28.209.62 17 270.9 270.8 nitaug nita.go.ug 213.136.37.38 13 226.9 226.6 mozilla mozilla.org 63.245.215.20 24 354.5 354 office office.com 104.40.225.204 20 261.7 beforward beforward.jp 54.95.196139 23 495.6 theugandanjobonline theugandanjobline.com 54.72.9.51 22 244.3 wordpress wordpress.com 192.0.78.9 12 122 121.9 howwebiz howwe.biz 104.31.93.16 12 123.7 123.6 microsoft microsoft.com 104.40.211.35 23 353.3 newsnow newsnow.co.uk 213.146.191.132 blogspot blogspot.ug 216.58.233.9 22 338.3 piratebay thepiratebay.org 140.27.216.28 9 62.6 olx olx.co.ug 204.74.99.100 14 230.5 pinterest pinterest.com 151.101.64.84 15 213.8 213.7 betin betin.co.ug 185.179.61.3 20 234.8 234.7 myway myway.com 74.113.233.77 15 341.2 ghafla ghafla.com 104.25.105.32 12 137.5 researchgate researchgate.net 65.393251.69 20 321 320.6 fortebet fortebet.up 84.244.69.77 18 232.4 231.6 Table 7: Latencies to commonly visited sites on the Internet

The project went ahead to plot a graph of latencies against hop counts for the different websites. 70

TYPICAL LATENCIES TO COMMONLY VISITED SITES BY UGANDANS 600

500

400

300

latencies ms in latencies (RTT) 200

100

Illustration 32: Map of commonly visited sites on the Internet. 0 0 5 10 15 20 25 30 HOP COUNT

Table 8: Graph showing latency to commonly visited sites by Ugandans

6. DISCUSSION OF RESULTS 6.1 Introduction

Network latency has a major impact on performance connecting to commonly visited sites on the Internet.

The methodology was scientific and included passive techniques of Internet 71 measurement which involved acquiring the data from already existing sources like

Hurricane Electric.net and the UIXP websites. Active Measurements are those that included probing for the BGP routing information through ping, mtr--report and Whois database. The project also carried out an online survey and meetings. The following results were obtained.

6% of commonly visited sites on the Internet are in Uganda with an average latency of 36 ms and that was the smallest latency observed compared to those in Europe and America. 6.2 Characterise and map inter-domain peering between various ISPs within Uganda

The project discovered that ISPs at the UIXP have different peering policies which include selective, open and restricted and they are defined in their terms and agreements of peering.

From the BGP AS_PATH LENGTH an indicator of interconnectedness of an ISP can be calculated. The bigger this value is the less interconnected the ISP is. Strengthening peering at the eXchange would reduce the path length because the different ISPs would be directly connected to each other, so the shortest path possible would be 1 (one).

From the peering architecture, the project discovered that there is bilateral peering at the UIXP, which means ISPs can peer with both the Route Server and other ISPs at the same time.

Even though some ISPs are not peering with the RS and therefore their routes are not seen by all the other ISPs, some of which include Google GGC, Liquid Telecom and

Seacom. These have open peering policies and any ISP can peer with them for example the

GGC, peering with it can significantly reduce on the cost of transit each time their clients request to access Google because it has a cache present at the UIXP.

6.3 Evaluate the presence of the Ugandan ISPs at other African eXchanges

The results show that 70.6% of the ISPs at the UIXP are of Ugandan origin and the 72 remaining 29.4% are non Ugandan. Of these, two are CDNs, which includes Akamai and the GGC.

For analysis of peering Relationship of Ugandan ISPs at selected African Internet

Exchanges it was found that only two Ugandan ISPs were present at any other Internet exchange apart from the UIXP, and these include;

• Smile Communications Ltd

• Bandwidth and Cloud Services Group Ltd 6.4 Analyse the impact of deployment of CDNs and caching proxies at the UIXP

Currently in 2018 the UIXP boasts approximately 6 Gbps of traffic. With a clear observation of the trends in peak traffic. There was an increase of about 1900% and the most insignificant increase were noted in 2016 and 2017 where there was a jump corresponding to the deployment of the caching proxies at the UIXP.

The traffic boost is almost like one of the most attractive factors at the UIXP as indicated through the survey we conducted. As different years data was acquired it showed that different ISPs joined the UIXP over that time period, most significantly between 2016 to 2017 which coincided with the introduction of the caching proxies to the eXchange.

From the graph below we realized that placement of caching proxies at the UIXP attracts more ISPs to peer at the UXIP, but also better member peering policies attracts the deployment of CDNs and caching proxies thus strongly supporting the project hypothesis.

The traffic from April 2016 to 2018 at the UIXP and from the survey it was observed a boost in the traffic levels for the different ISPs. This was due to the deployment of Akamai in 2016 and Google in 2017.

ISPs are still mostly dependent on their transit service providers to carry most traffic and that there is still very little traffic that is passed through the UIXP.

With the placement of caching proxies and CDNs, traffic is boosted because most 73 of the content remains local. This works in a way that once a person make a request for example a youtube video for first time. The request leaves the country and fetches the request from where the server is located.

When the same exact request is made the second time, the request doesn't have to leave the country to look for the server that contains the content, instead it refers to the caching proxy and retrieves the request. This is due to the fact that the first time that particular content was requested, it was stored in a caching proxy awaiting for the next time it will be requested so that it is just retrieved. Thus enabling keeping data local and reduction on the latencies thus improving user experience. 6.5 Assess the impact of keeping local traffic local

The project discovered that 6% of the most commonly visited sites by Ugandans are hosted within Uganda with an average latency of 36.6 ms (RTT) while 36% are hosted in the US with an average latency of 276 ms. South Africa with an average latency of 126ms,

Europe having 25% and with an average of 250ms and Asia with an average latency of 518 ms.

The project went ahead to plot a graph of latencies against hop counts for the different websites and it was from this that a major discovery was made. For the websites that where hosted within Uganda like ar.mak.ac.ug had an average latency of approximately

1 ms. On average all the websites that are hosted locally a had total average latency of approximately 36.6 ms (RTT).

It also showed us that Daily-mail, a UK based service had an average latency of approximately 50 ms and this is due to the fact that it hosted by Akamai Technologies which is present at the UIXP thus reducing on the latency greatly and thus improving user experience on the Internet thus strongly supporting the project hypothesis which states that deployment of CDNs at the UIXP will reduce commonly latency to commonly visited sites on the Internet.

74 7. CONCLUSIONS AND RECOMMENDATIONS 7.1 Introduction

From the results obtained the project concludes that better peering and intensive placement of caching proxies reduces latency to commonly visited sites on the internet and also reduces on the costs incurred by the ISPs present at the UIXP. 7.2 Conclusion

This project investigated ISP Interconnectivity In Uganda. It was intended to assess the impact of tromboning on latency and hence reduce latency through better peering at the

UIXP and attracting more CDNs to the UIXP. This was in relation to network latency having a major impact on performance connecting to commonly visited sites on the Internet.

The project specifically sought to build a BGP and IXP testbed. Characterise and map inter-domain peering between various ISPs within Uganda. Analyse the impact of the deployment of CDNs and caching proxies at the UIXP and map the locations of the most commonly visited sites by Ugandan users.

The project established that even though some ISPs are not peering with the RS, some of which include Google GGC, Liquid Telecom and Seacom. These have open peering policies and any ISP can peer with them for example the GGC and thus reduce their transit cost each time their clients request to access Google because it has a cache present at the UIXP. Also of note is the fact that 70.6% of the ISPs at the UIXP are of Ugandan origin and the remaining 29.4% are non Ugandan. Of these two are CDNs, which includes Akamai and

GGC.

Lastly Daily-mail, a UK based service had an average latency of approximately 50 ms and this is due to the fact that it hosted by Akamai Technologies which is present at the

UIXP thus reducing on the latency greatly and thus improving user experience on the

Internet thus strongly supporting the project hypothesis which states that deployment of CDNs at the UIXP will reduce commonly latency to commonly visited sites. In view of these findings, the project concluded that better peering and intensive placement of caching 75 proxies reduces latency to commonly visited sites on the internet and also reduces on the costs incurred by the ISPs present at the UIXP. 7.3 7.4 Recommendations

The researcher has argued in this dissertation that better peering and a concentrated placement of caching proxies reduces latency to commonly visited sites on the Internet and also reduces on the costs incurred by the ISPs present at the UIXP.

It is against this background that these recommendations are made. Despite the limitations, this project noted that over the last two years the traffic patterns at the UIXP demonstrate a major increase of 1900%. Basing generalisations on the findings of this project, the researcher recommends that more sites be hosted locally to keep local traffic local and attract more CDNs, as well as better peering at the UIXP.

The reseaher further recommends that more Internet eXchanges should be established due the benefits associated with them like peering as well as CDNs.

8. REFERENCES AND BIBLIOGRAPHY [1] “What is Latency - How is Latency Different from Bandwidth.” [Online]. Available: http://www.plugthingsin.com/internet/speed/latency/. [Accessed: 30-May-2018]. [2] J. Miller, “The Trombone Effect, Explained.” [Online]. Available: https://blog.telegeography.com/what-is-the-trombone-effect. [Accessed: 28-May- 2018]. [3] “Understanding Autonomous Systems.” [Online]. Available: https://www.cs.rutgers.edu/~pxk/352/notes/autonomous_systems.html. [Accessed: 30-May-2018]. [4] “What is Caching Proxy? - Definition from Techopedia.” [Online]. Available: https://www.techopedia.com/definition/23262/caching-proxy. [Accessed: 28-May- 2018]. [5] “What is peering | Netnod.” [Online]. Available: https://www.netnod.se/ix/what-is- peering. [Accessed: 28-May-2018]. [6] “Route Servers |.” . [7] “What is a CDN? How does a CDN Work? | CDN Guide | Incapsula.” [Online]. Available: https://www.incapsula.com/cdn-guide/what-is-cdn-how-it-works.html. [Accessed: 28-May-2018]. 76

[8] “The Uganda Internet eXchange Point.” [Online]. Available: https://www.uixp.co.ug/. [Accessed: 30-May-2018]. [9] “Peering at the Internet’s Frontier: A First Look at ISP Interconnectivity in Africa | SpringerLink.” [Online]. Available: https://link.springer.com/chapter/10.1007/978-3- 319-04918-2_20. [Accessed: 30-May-2018]. [10] “Why Internet Paths Matter: Performance | Dyn Blog.” [Online]. Available: https://dyn.com/blog/internet-paths-matter-performance/. [Accessed: 30-May-2018]. [11] “RFC 4893 - BGP Support for Four-octet AS Number Space.” [Online]. Available: https://tools.ietf.org/html/rfc4893. [Accessed: 30-May-2018]. [12] “RFC 4271 - A Border Gateway Protocol 4 (BGP-4).” [Online]. Available: https://tools.ietf.org/html/rfc4271. [Accessed: 30-May-2018]. [13] “BGP Types of Peering | BGP Help.” [Online]. Available: http://bgphelp.com/2017/01/05/bgp-types-of-peering/. [Accessed: 30-May-2018]. [14] “netLabs! Uganda on Twitter: ‘Massive day at @UIXP, the Google Global Cache (GGC) has arrived which will improve access to Google services for Ugandan citizens. Well done @kyleville @LaochMumhain and Brian Masiga from @netLabsUG. @NITAUganda1 @UCC_Official @FrankTumwebazek… https://t.co/8q4xMEGC8v.’” [Online]. Available: https://twitter.com/netLabsUG/status/933956861375733763. [Accessed: 30-May- 2018]. [15] “MikroTik BGP and IXP testbed.” [Online]. Available: http://mikrotik.netlabsug.org/. [Accessed: 24-Feb-2018]. [16] “The BIRD Internet Routing Daemon Project.” [Online]. Available: http://bird.network.cz/. [Accessed: 30-May-2018]. [17] “Border Gateway Protocol,” Wikipedia. 15-Feb-2018. [18] “AS29039 Africa Online Uganda - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS29039#_asinfo. [Accessed: 28-Feb-2018]. [19] “AS36991 Africell Uganda Limited - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS36991. [Accessed: 30-May-2018]. [20] “AS37273 Bandwidth and Cloud Services Group Ltd - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37273. [Accessed: 30-May-2018]. [21] “AS25818 cmcnetworks - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS25818. [Accessed: 30-May-2018]. [22] “AS29032 DATANET LLC - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS29032#_asinfo. [Accessed: 28-Feb-2018]. [23] “AS36997 Infocom ltd - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS36997. [Accessed: 30-May-2018]. [24] “AS20294 MTN Uganda - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS20294#_peers. [Accessed: 28-Feb-2018]. [25] “AS37610 New Frontiers Technology Consult Limited - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37610. [Accessed: 30-May-2018]. [26] “AS327724 National Information Technology Authority Uganda - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS327724. [Accessed: 30-May-2018]. [27] “AS42 WoodyNet - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS42. [Accessed: 28-Feb-2018]. [28] “AS327687 Research and Education Network for Uganda - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS327687. [Accessed: 30-May-2018]. [29] “AS37063 Roke Investments International Ltd - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37063. [Accessed: 30-May-2018]. [30] “AS37100 SEACOM Limited - bgp.he.net.” [Online]. Available: 77

https://bgp.he.net/AS37100. [Accessed: 30-May-2018]. [31] “AS37689 SIMBANET (U) LIMITED - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37689. [Accessed: 30-May-2018]. [32] “AS327717 SURETELECOM UGANDA LIMITED - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS327717. [Accessed: 30-May-2018]. [33] “AS37122 Smile Communications Ltd - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37122. [Accessed: 30-May-2018]. [34] “AS37113 Tangerine Limited - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37113. [Accessed: 30-May-2018]. [35] “AS37679 Uganda Revenue Authority - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS37679. [Accessed: 30-May-2018]. [36] “AS21491 Uganda Telecom - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS21491. [Accessed: 30-May-2018]. [37] “AS327744 Afrimax Uganda - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS327744. [Accessed: 30-May-2018]. [38] “AS36977 Airtel Uganda Limited - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS36977#_asinfo. [Accessed: 28-Feb-2018]. [39] “AS3856 Packet Clearing House - bgp.he.net.” [Online]. Available: https://bgp.he.net/AS3856. [Accessed: 30-May-2018]. [40] “IP-to-ASN - Team Cymru.” [Online]. Available: https://www.team-cymru.com/IP- ASN-mapping.html. [Accessed: 14-May-2018]. [41] “Top Websites in Uganda - SimilarWeb Website Ranking.” [Online]. Available: https://www.similarweb.com/top-websites/uganda. [Accessed: 20-Apr-2018]. 9. APPENDICES 9.1 Budget

A financial budget outlining the costs involved in delivering the project.

Cost No. Item Description Quantity Unit Rate (Ushs) Pens 2 No. 1,000 2,000 Pencils 2 No. 800 1,600 Book 1 No. 5,000 5,000 Printing 1 rim 12,000 12,000 Paper Flash Disk 1 No. 25,000 25,000 Lump Airtime No. 50,000 50,000 sum Transport 3 Travel Lump sum 50,000 50,000 Fare Poster 1 1 30,000 30,000 Lump Photocopying Lump sum 50,000 50,000 sum Printing 150 Pages 200 30,000 78

Binding 2 Lump sum 12,000 24,000 GRAND TOTAL 279,600

9.2 Time Framework

The proposed time framework vs the actual time framework. 9.2.1 Proposed Time Framework

Aug Sep Oct Nov Dec Jan Feb Mar Apr May

Proposal writing

Literature review and data collection

Requirement selection

Development and Testing of the system

Mid-term presentation

Final year presentation 79

Report writing and submission 80

Actual Time Framework

Aug Sep Oct Nov Dec Jan Feb Mar Apr May Jun Proposal writing

Literature review

Data Collection

Requirement selection

Development and Testing of the research

Mid-term presentation

Poster Presentation

Final year presentation

Report writing and submission

10. Appendix

The following questions were posed to the survey participations:

• Please enter your Network Name

• Please enter your Autonomous System Number (ASN) 81

• What is your peering policy?

• Who are you peering with? (please indicate where applicable the category, that is,

downstream Customer "C", Peers "P", upstream Transit provider "T")

• What criteria do you use to choose peers "P"?

• Do you have a written and signed peering agreement for all the peers?

• Does your network exchange IPv6 routes?

• What percentage of your network's traffic goes through the UIXP?

• What percentage of your network's traffic is International?

• Does your Network host a CDN cache? If yes, which CDN?

• Does your network peer with the route servers or only have bi-lateral peering at the

UIXP? If the latter, what is your criteria for peering?

• What was the range of your Network's traffic through the UIXP in April 2016?

• What was the range of your Network's traffic through the UIXP in April 2017?

• What is the range of your Network's traffic through the UIXP in April 2018?

10.1 10.2 Instruments

The tools that were used to collect research data. 10.2.1 Mapping Tools

• NTE Simulator

• Google Maps 10.2.2 Origin Locator Tools

• Regional Registries 82

• Team Cymru’s Whois Database 10.2.3 Testbed Tools

• Winbox for MikroTik Routers 10.2.4 IP/Geo location Tools

• MaxMind

• EurekAPI

• IP2Location

• ipinfo.io

• Reverse DNS 10.2.5 BGP Routing Information Tools

• Looking Glass Server

• PeeringDB

• UIXP Websites

• Hurricane Electric 10.2.6 10.2.7 Online Survey Tools

• Google Forms 10.2.8 Latency Tools

• pings

• mtr - - report

10.3 Other relevant information

This project was mainly dealing with the Internet. Due to the dynamic nature of the Internet, it’s infrastructure is a changing one hence the project obtained snapshots for the different Internet measurements.