Samenvatting

The Amsterdam Internet Exchange (AMS-IX) is an organization that offers a network platform where network organizations can exchange Internet traffic between each other. These network organizations are Internet Service Providers (ISPs), content providers and other telecommunication companies. AMS-IX’s strives to offer a high availability network platform. In order to support this goal AMS-IX conducts testing procedures before implementing new software or hardware on its production platform. In these testing procedures traffic speeds up to 100Gbit/s need to be generated. General purpose computers can not generate such streams because the traffic is limited by the General Purpose Processor (GPP). For this reason AMS-IX utilizes specialized network generators manufactured by Anritsu, Japan. These network generators are manually controlled via a Graphical User Interface (GUI). This makes executing multiple tests labor intensive. Past experiences at AMS-IX have shown that some problems in software and hardware remain unnoticed in testing procedures due to insufficient testing. With the consequence that the availability of the platform is at risk. The traffic generators made by Anritsu provide a remote control feature. This enables the possibility to automate the traffic generator. No existing testing system was found that supported this feature. However we found a testing system called Scapytain that partially fits the solution. Scapytain was designed for automating Scapy tests, Scapy is a traffic generator software library built for the Python programming language. Because it only runs on general purpose computers which are not sufficient for AMS-IX’s testing procedures. An new software library for Python, named python-anritsu, was developed during this project that controls the Anritsu via its remote control feature. Scapytain is able to manage tests and python-anritsu is able to configure the Anritsu traffic generator. This system helps automating the testing procedures of AMS-IX, indirectly improving the stability of the platform.