Giter Site home page Giter Site logo

alksarioglou / mini_internet Goto Github PK

View Code? Open in Web Editor NEW
0.0 1.0 0.0 2.13 MB

Building and operating a fully-functional mini-Internet including dealing with intra-domain routing, inter-domain routing and policy routing by using Docker containers, using Open vSwitch for configuring the L2 switches and using the FRRouting software routing suite for configuring the L3 routers

License: GNU General Public License v3.0

communication-networks internet docker-container open-vswitch frrouting

mini_internet's Introduction

Operation of a mini-Internet

  • Building and operating a fully-functional mini-Internet including dealing with intra-domain routing, inter-domain routing and policy routing by using Docker containers
  • Used Open vSwitch for configuring the L2 switches and the FRRouting software routing suite for configuring the L3 routers
  • Performed in teams of 3 people, each one of which operated one fully-functional Autonomous System (AS)

Project Description

In this project, we were tasked to build and operate our very own mini-Internet together with more than 100 of our fellow classmates. Our main goal? Enabling end-to-end connectivity across around 70 Autonomous Systems (ASes) composed of hundreds of network devices.

In doing so, we experimented with the most common switching and routing technologies used in the Internet today. We had to face the same challenges actual network operators experience every day. To reach Internet-wide connectivity, we first needed to enable internal connectivity, within our own AS, before interconnecting our AS with other ASes, managed by other groups of students. To establish connectivity within our AS, we configured IPv4 and IPv6 addresses and used Open Shortest Path First (OSPF).

To establish connectivity across different ASes, we used the only inter-domain routing protocol available today: the Border Gateway Protocol (BGP). At the end of the project, end-hosts were able to communicate with each other, independently of the AS they were located in.

To implement this we used a base network topology on top of virtual layer-2 switches, running Open vSwitch and virtual routers, running the FRRouting software routing suite. We configured the virtual switches and routers through a Command Line Interface (CLI). This interface is virtually identical to the one used by actual network operators.

mini_internet's People

Contributors

alksarioglou avatar

Watchers

 avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.