Logo UAB

Foundations of Networks

Code: 102713 ECTS Credits: 6
Degree Type Year Semester
2500895 Electronic Engineering for Telecommunication OB 3 1
2500898 Telecommunication Systems Engineering OB 3 1
The proposed teaching and assessment methodology that appear in the guide may be subject to changes as a result of the restrictions to face-to-face class attendance imposed by the health authorities.


Ramon Martí Escalé

Use of Languages

Principal working language:
catalan (cat)
Some groups entirely in English:
Some groups entirely in Catalan:
Some groups entirely in Spanish:


Guillem Boquet Pujadas
Pere Tuset Peiro
Joan Protasio Ramirez


The student must have an adequate level of calculus, statistics and programming.

Objectives and Contextualisation

  • Know the architecture and protocols of telecommunication networks.
  • Know the mechanisms of network interconnection.
  • Identify the different types of telecommunication networks.
  • Know how to design distributed applications and services.
  • Identify the different types of shared access mechanisms.
  • Know the different traffic models and know how to analyze the traffic parameters of a network.
  • Classify the different types of cellular networks and know how to apply planning techniques.


    Electronic Engineering for Telecommunication
  • Analyse and evaluate the social and environmental impact of technical solutions
  • Communication
  • Develop personal attitude.
  • Develop personal work habits.
  • Develop thinking habits.
  • Draft, develop and sign projects in the field of telecommunications engineering designed to conceive, develop or exploit electronic systems
  • Learn new methods and technologies, building on basic technological knowledge, to be able to adapt to new situations.
  • Work in a team.
    Telecommunication Systems Engineering
  • Analyse and evaluate the social and environmental impact of technical solutions.
  • Communication
  • Develop personal attitude.
  • Develop personal work habits.
  • Develop thinking habits.
  • Draft, develop and sign projects in the field of telecommunications engineering that, depending on the speciality, are aimed at the conception, development or exploitation of telecommunication and electronic networks, services and applications.
  • Learn new methods and technologies, building on basic technological knowledge, to be able to adapt to new situations.
  • Work in a team.

Learning Outcomes

  1. Assess the economic and social impact of telecommunication networks, systems, services and infrastructures in business, institutional or residential settings
  2. Autonomously learn adequate new knowledge and techniques for the conception, development or exploitation of telecommunication systems in reference to signal processing subsystems and to basic network aspects.
  3. Communicate efficiently, orally and in writing, knowledge, results and skills, both professionally and to non-expert audiences.
  4. Conceive, deploy, organise and manage telecommunication networks, systems, services and infrastructures in residential (homes, cities and digital communities), business or institutional contexts and be responsible for starting them up and making on-going improvements.
  5. Conceive, deploy, organise and manage telecommunication networks, systems, services and infrastructures in residential (homes, city and digital communities), business or institutional contexts taking responsibility for setup and continuous improvement
  6. Describe and apply the concepts of communications network architectures, protocols and interfaces.
  7. Describe and apply the concepts of network architecture, protocols and communication interfaces.
  8. Describe networking and routing methods, as well as the basics of network planning and dimensioning based on traffic parameters.
  9. Describe the methods for interconnecting and routing networks, as well as the basics of the planning and dimensioning of networks in accordance with traffic parameters.
  10. Develop curiosity and creativity.
  11. Develop independent learning strategies.
  12. Develop systemic thinking.
  13. Develop the capacity for analysis and synthesis.
  14. Differentiate the concepts of access and transport networks, circuit switching and packaging networks, fixed and mobile networks, as well as the systems and applications of distributed networks, and voice, data, audio, video, interactive and multimedia services.
  15. Differentiate the concepts of access and transport networks, circuit-switched and packaged networks, fixed and mobile networks, distributed network voice, data, audio, video applications and systems and interactive multimedia services.
  16. Efficiently use ICT for the communication and transmission of ideas and results.
  17. Evaluate the economic and social impact of telecommunication networks, systems, services and infrastructures in residential, business or institutional contexts.
  18. Independently learn new skills and techniques suitable for the conception, development or operation of telecommunications systems in relation to the signal processing subsystems and network basics.
  19. Make one’s own decisions.
  20. Use communication and computer applications (office automation, databases, advanced calculation, project management, display, etc.) to support the development and exploitation of telecommunication and electronic networks, services and applications.
  21. Work autonomously.
  22. Work cooperatively.


The course is divided into 2 parts. The first presents the architecture and protocols of the telecommunication networks, while the second focuses on the telecommunication network technologies.

0. Introduction

  • Introduction

Part I. Telecommunication networks architecture and protocols

I.1 Network architecture, layers, protocols and communication interfaces

  • I.1.1 Layer architecture
  • I.1.2 OSI model
  • I.1.3 TCP/IP model
  • I.1.4 Network interconnection
    • Repeater, Hub, Bridge, Switch, Router, Gateway

I.2 Classification of networks

  • I.2.1 Network topologies
    • Communication modes: unicast, broadcast, multicast, anycast.
    • Type of connections: point-to-point, point-multipoint, multipoint-multipoint.
    • Problems of fully connected networks.
    • Typical topologies: line, bus, tree, ring, star, mesh.
  • I.2.2 Access and trunk networks
  • I.2.3 According to technology: Wired, Wireless, Mobile
  • I.2.4 According to scope: WAN, MAN, LAN, PAN[, VPN]
  • I.2.5 According to type of switching: Circuits, Messages, Packets (Datagram mode, Virtual Circuit mode)

I.3 Application layer: Distributed applications and services

  • I.3.1 Client / server architecture
  • I.3.2 Distributed communication models: RPC, RMI, packets/datagrams, flows, messages, Web servers, new paradigms
  • I.3.3 Programming of distributed applications
    • Sockets
    • Servers
    • Customers
    • Concurrent servers

I.4 Transport and Network layers: TCP/IP protocols

  • I.4.1 Introduction
  • I.4.2 UDP
  • I.4.3 TCP
  • I.4.4 IP

I.5 Network layer: Creation of networks and subnets
I.6 Network layer: Basic routing

  • I.6.1 Introduction
  • I.6.2 Direct/indirect delivery
  • I.6.3 ARP

I.7 Link and Physical layers: Network technologies

  • I.7.1 Introduction
  • I.7.2 Ethernet Physical layer

I.8 Internet services 

  • I.8.1 DHCP
  • I.8.2 DNS
  • I.8.3 NAT

 Part II. Telecommunication network technologies

 II.1 Overview of telecommunication networks

  • II.1.1 Reference models: OSI and TCP/IP
  • II.1.2 Network architecture: data, control and management planes
  • II.1.3 Traffic characteristics: voice, video and data
  • II.1.4 Link characteristics: speed, delay, jitter and losses

II.2 Media and techniques for data transmission

  • II.2.1 Transmission media: guided and wireless
  • II.2.2 Modulation techniques: amplitude, frequency and phase
  • II.2.3 Channel characteristics: attenuation, distortion and noise
  • II.2.4 Channel capacity measurements: Nyquist and Shannon theorems
  • II.2.5 Determining coverage in wireless media: propagation models

II.3 Data link control mechanisms

  • II.3.1 Topology: point-to-point, point-to-multipoint
  • II.3.2 Line configuration: half-duplex, full-duplex
  • II.3.3 Synchronization: asynchronous, synchronous
  • II.3.4 Framing: character, bit
  • II.3.5 Error detection and correction: parity and cyclical redundancy
  • II.3.6 Flux control: stop and hold, sliding window and ARQ

II.4 Multiplexing, multiple access techniques and switching mechanisms

  • II.4.1 Multiplexing techniques: frequency, time, space and code
  • II.4.2 Multiple access techniques: TDMA, FDMA, CDMA, ALOHA, Slotted ALOHA and CSMA
  • II.4.3 Switching mechanisms: circuitsand packets

II.5 Evolution of telecommunication networks

  • II.5.1 Core: SDH, PDH, X.25, Frame relay, ATM/SONET
  • II.5.2 Access: POTS, xDSI, xDSL, xPON
  • II.5.3 Local and personal area: Ethernet, Wi-Fi, Bluetooth
  • II.5.4 Cellular networks: 1G, 2G, 3G, 4G


During the course, we will carry out the following activities:

  • Theory sessions, where the teacher will provide information on the knowledge of the subject and on strategies to acquire, expand and organise this knowledge. The active participation of the students will be encouraged during these sessions, for example posing discussions in those points that admit diverse technological solutions.
  • Problems sessions, where the students will have to actively take part to consolidate the knowledge acquired by solving, presenting and debating related problems. Problems are distinguished from the exercises, which can be considered as trivial problems. The problems will often admit several solutions and may cause debate among the students.
  • Laboratory practical sessions, where small projects will be proposed to be analysed and developed by the students in group. The sessions will be previously prepared, documented and programmed by the teacher, and the students will have to prepare them before attending, reviewing the related theoretical knowledge and the basic technical aspects of the development. The laboratory sessions should serve students to achieve the skills of the subject and contribute to achieve some skills such as autonomous work.
  • Preparation of the portfolio of the subject, in a virtual way through a wiki, a collaborative web tool. Students will have to work autonomously in teams in the research and the preparation of the corresponding material of the evidences of his theory and problems learning, and in the study of this material. The evidences include extensions of the different topics exposed to the sessions of theory and collaborative problem solving. The teacher will monitor the work of the different teams, provide feedback to the teams depending on the task done and the doubts they raise or the errors they manifest. The preparation of the portfolio should serve students to help achieve the competencies of the subject. The teaching methodology and evaluation are closely linked to the wiki-based virtual portfolio system, which is the cohesive element of the different teaching activities during the course, and which allows a system of continuous and formative evaluation, incorporated into the teaching/learning process. The wiki will help the students to develop a constant work that will take them to reach the proposed knowledge, and the skills and competences associated with the theory and problems parts.

Annotation: Within the schedule set by the centre or degree programme, 15 minutes of one class will be reserved for students to evaluate their lecturers and their courses or modules through questionnaires.


Title Hours ECTS Learning Outcomes
Type: Directed      
Laboratory sessions 12 0.48 2, 18, 3, 8, 7, 12, 13, 10, 15, 16, 22, 20
Problems classes 10 0.4 3, 8, 7, 15
Theory classes 26 1.04 2, 18, 1, 17, 4, 5, 8, 9, 7, 6, 15, 14, 20
Type: Supervised      
Tutored jobs and wiki queries 8 0.32 3, 8, 7, 15, 16
Type: Autonomous      
Laboratory preparation and autonomous work 26 1.04 3, 8, 7, 15, 22, 21
Preparation of the virtual portfolio (wiki) of the course 30 1.2 2, 18, 1, 17, 3, 4, 5, 8, 9, 7, 6, 15, 14, 16, 22, 21
Study and preparation of the evaluation tests 28 1.12 2, 18, 8, 7, 15, 21


Scheduled evaluation process and activities

The final grade of the subject, which includes assessment on the acquisition of knowledge, skills and competences, will be calculated by weighting:

  • In 30% the qualification of the work done in the portfolio (wiki). The minimum grade required for this part is 5 out of 10.
  • In 30% the validation qualification of knowledge. The minimum grade required for this part is 5 out of 10. To carry out the validation of knowledge, two partial tests will be done during the course (a partial test to evaluate part I of the subject and another partial test to evaluate part II of the subject) and a final exam (which will evaluate both parts). If the student takes more than a 4 in one of the two parts in the partial tests, it should not be evaluated again of this part in the final exam (the note for this part will be that of the partial). The validation note will finally be the average of the marks obtained in the two parts. In order to make the average, the student must have obtained more than 4 in the theoretical exam of each part (either partial or in the corresponding part of the end).
  • In 15% the qualification of the work done to the activities in class. No minimum grade is required for this part.

* In 25% the qualification of the practical sessions. The minimum grade required for this part is 5 out of 10.

There is a minimum final grade of 5 to pass the course.

A minimum final mark of 5 is required to pass the course.

When a student does not pass any of the parts that require a minimum mark, the average will be calculated with the marks obtained. If this average is equal to or less than 4.9, the final grade will be this average, whereas if it is greater than 4.9 the final grade will be 4.9 (S).

The evaluation mechanisms used in the subject are described in more detail below. 

Programming evaluation activities

The dates of continuous evaluation and delivery of works will be published the first day of the course on the virtual campus (and/or wiki page of the course) and may be subject to possible changes due to adaptation to possible incidents. These changes will always be reported on the virtual campus (and/or wiki page of the course) since it is understood that this is the usual platform for the exchange of information between teachers and students.

The following evaluation activities are planned:

  • Portfolio: weekly
  • Classroom activities: weekly
  • Laboratory: 5 sessions during the course, day and time depending on the group of practices
  • Validation test of practices 1 and 2: once the practices are finished
  • Theory partial exams of parts I and II of the subject: around weeks 10 and 15
  • Theory final exam

Retaking process

Students may take the retaking process if they have taken a set of activities that represent at least two-thirds of the total grade of the course.

Retaking mechanisms will focus on activities 1) Portfolio, 2) Validation of Knowledge, 3) Laboratory sessions. In the event that a student has not passed any, or all of these parts, before the date of the final exam, she/he can retake this part by means of a written test (cases 2 and 3), making a second delivery of the laboratory report (case 3) or finishing the wiki Portfolio before that date (case 1). In case 1, if the student retakes the Portfolio part, she/he will get a pass or fail. If the student passes, she/he will have a maximum mark of 5. If she/he fails, she/he will get the mark previously obtained in this part. 

Review of the exam procedure

For each assessment activity, a place, date and time of revision will be indicated in which the student will be able to review the activity with the teacher. In this context, claims may be made about the activity mark, which will be evaluated by the teacher responsible for the subject. Unless otherwise noted, if the student does not attend this revision, this activity will not be reviewed later. 

Special grades

When a student has not done any work in laboratory, has not taken any of the partial or final theory written tests, and has a mark lower than 5 in the portfolio (wiki), it will be considered that there are not enough assessment evidences, and the final mark will be "not assessable." The rest of students who have not passed the course will get a "Suspens" (fail) grade, with the mark obtained in the subject. Those students qualified with "Suspens" due to not having reached the minimum mark in any of the evaluation tests, will have the mark got in the evaluation exam that has not reached the minimum required (always taking the minimum mark in the case that the minimum in several tests is not obtained).

Honor grade (Matrícula d'Honor, MH): Granting an honor grade qualification is a decision of the faculty responsible for the subject. The regulations of the UAB indicate that MH can only be awarded to students who have obtained a final grade of 9.00 or more. It can be granted up to 5% of MH of the total number of students enrolled. 

Student irregularities, copy and plagiarism

Without prejudice to other disciplinary measures deemed appropriate, and in accordance with current academic regulations, any irregularities committed by the student that could lead to a variation of the grade of an evaluation act will be graded with a zero. Therefore, copying or allowing to copy a laboratory work/report or any other evaluation activity will involve failing with a zero, and if it is necessary to pass it to pass the course, the whole course will be failed. The evaluation activities qualified in this way and by this procedure will not be retaken, and therefore the course will be failed directly without the opportunity to retake it in the same academic year. 

Evaluation of repeating students

The repeating students will be able to validate the theory part of the subject. The way to calculate the final mark will be the same as mentioned above, taking the mark from the portfolio, classroom activities and partial exam(s) of the part(s) of the theory to validate.

Repeating students will also be able to validate the practices separately. The way to calculate the final mark will be the same as mentioned above, taking the mark from the practice(s) to validate. 

Evaluation criteria

The evaluation will be continuous and formative, based on a virtual portfolio prepared on a wiki, where students will accumulate the evidences of their learning. We will value the constant, collaborative and quality work in the course. We will value the attainment of knowledge and skills based on the contentof the portfolio and the laboratory work/reports. The way in which the portfolio has been worked on, perfectly deductible from the activity records of the wiki, will help us assess the achievement of the competences. 

Activities and instruments that will be used to evaluate

General organization

The first step is to divide the class group into a series of work teams, big enough to allow a dynamic of collaboration between them, and small enough to allow the participation of all members. Each team is given access to a wiki.

The starting wiki that we provide the teams is not empty, but has a predefined web page structure, which the students must fill with the evidences of their learning process.

This template aims to guide, not force, the student in the organization of content.

Some pages are mandatory and others are optional. At the same time, we think of an open space in which students are not limited to the proposed content, but can create their own web pages, with unintended input content.

The use of the wiki allows students to learn to work autonomously as a team and coordinate. The wiki on which students must work is organized in assessable evidence (or content). The evidences that will be used in the wiki of this course are the ones listed below. In addition to these, students can contribute with others that will also be taken into account in the assessment.With this we aim to awaken the student's creativity and allow their own learning objectives to be chosen.

One of the aspects that we consider key in this assessment and learning method is the feedback between teacher and students and between the students themselves. If the participation of the students shows that they have not assimilated a concept well, the teacher or his classmates can add a clarification in the same wiki. In no case making a mistake in the wiki implies having a bad mark, not even in the problems! Quite the opposite. Participation, mistakes and corrections will be key elements to guide learning. To reinforce the monitoring of the teams, tutoring will be scheduled at the corresponding times to analyse how it is going, find weak points, find solutions to specific problems, etc.

Learning evidences included in the portfolio

For each subject of the course, students can participate in the preparation of the following evidences, in pre-existing pages of the team's wiki:

Self-assessment questions

Students must demonstrate on a weekly basis thatthey have achieved the knowledge by answering on the wiki the self-assessment questions raised by each theory section.

The work in the self-assessment questions section will be carried out jointly by all the members of the wiki team, at least 24 hours before the next problem session so that the other team members have enough time to read it and have doubts, even for students who choose not to attend face-to-face sessions.

Each student must collaborate weekly and proportionally, answering to self-assessment questions. Each student must also read, understand and, if necessary, clarify or expand the answers of the other team members before the face-to-face session.

The objective is that once the face-to-face seminar session has been attended and the self-assessment questions have been updated, all team members understand all the self-assessment questions and the wording of the wiki is comprehensible enough to be used as study material for all members.

Individual Activities

Some sessions have activities. Unless otherwise stated, these are individual activities and should be done before the next problems session morning, even for students who choose not to attend face-to-face sessions.


The work in the problems section will be done individually and weekly.

The answer of the proportional part of the problems of the session is considered an assessable contribution.

In sessionswhere there are not enough problems for all the members of a team, the problems can be made in sub-teams of 2 or 3 members.

It is an evidence, to be worked by the entire wiki team. For each list of problems delivered by the teacher, you must follow the next cycle, in a period of two weeks:

  • Each student proposes a solution for 1 - 2 problems on the list.
  • The rest of the students of the team make comments to the proposed solutions. In a problem session, we collectively discuss the problems on the list.
  • Each student, based on the comments received from classmates and in the session, proposes the final solutions for their 1 or 2 problems.

Individual Extensions

Throughout the course there is an individual and mandatory extension of some subject of the course (explained or not in the face-to-face sessions).

Each student can make up to three additional optional extensions to improve the wiki grade.

Each extension must follow the following template:

  • Make a short introduction of the selected topic (maximum 2000 characters)
  • Add a scheme or figure
  • Search, correctly reference and comment 10 links to websites where to find informationon the subject. For each link it will be necessary to put:
    • URL (direct link to the page)
    • Date of the last access to the page
    • Title (if it has one), author / owner (if any), and date of creation of the page (if it is published).
    • Language in which it is written.
    • Brief description of what can be found.
    • Score: personal mark(from 1: weak to 5: very good).
  • Conclusion (maximum 1000 characters)

In addition to these evidences, each team is free to create other pages, according to their interests and needs. At all times the teams are encouraged to add the elements they consider appropriate and that demonstrate their learning or their ability to use the knowledge or skills acquired.

Class activities

These are activities that are carried out within the theory and problem sessions, on a weekly basis.

As they are face-to-face activities, they do not have a mandatory nature (you do not have to do them to pass the course).

Examples of these activities can be: a comment on a past documentary in class, active participation of students when the teacher asks questions about thetheory explained, the description of a theatrical activity done in class, a short and brief test of two questions about the theory or problems session just done in class.

Laboratory reports

The attendance to laboratory sessions is compulsory and requires the preparation of a previous report in which the preparation of each session must be proven. The projects developed in these sessions must be documented through development reports that must be submitted. These reports should include the main aspects of the design and the most significant issues of the implementation. Along with the information on the laboratory projects, a report template is also provided, which includes the basic questions that must be covered. With this report the students justify their development decisions and analyse the results obtained.

Knowledge validation tests

Knowledge validation tests are individual written tests that aim to validate if each student has achieved minimum knowledge and skills of the course. These exams are motivated by the high importance that is given to a correct achievement of the knowledge and skills of the courses in the engineering environment where we move. Knowledge tests are mandatory for everyone. 

Indicators that will be used to assess the achieved learning

In the evidences included in the wiki, the indicators that we will use will be the individual constancy in the work, the cooperation between the members of each team, the qualityof the work done and the degree of participation in the set of evidences. Quality indicators are the correct use of the technical terms, the correct writing of the paragraphs and the own elaboration of the material citing the used sources (that is to say, literally copying a text of a page from Internet is considered of null quality). We will value constancy in the sense that we believe that small frequent interventions are better than large interventions very spaced over time. At the same time, we think that the model of frequent small interventions favours cooperation among the members of the team, which we will also value positively. We will value that the pages are built and reviewed slowly step by step between several people (at the opposite, a page built from a word processor by a person and loaded as an attachment seems to us a zero cooperation model). We will value that the resolutions of the problems are well argued and corrected if required. We will value the fact that each student has participated a minimum number of times in each evidence. In the activities in class we will value the participation of the students and the reports or documents delivered. In the laboratory part we will use as indicators the preparation (preliminary reports) and the active participation in the laboratory sessions and the quality in the elaboration of the complete development reports. In the validation of knowledge tests, the main indication will be the degree of correctness of the answers to the questions raised. 

Details about the laboratory sessions

The laboratory sessions consist in the accomplishment of a series of works with which try to reach knowledge and abilities already seen in theory classes or totally new. It is considered equally important to have worked throughout the development of the practice, as well as having understood and learned the knowledge to them.

In the development of the course, four projects will be carried out in the fields of:

  • Distributed programming over the Berkeley socket interface (2 weeks x 2 hours)
    • Programming of distributed applications
    • Sockets
    • Concurrent servers (fork)
  • Networks creation and administration (1 week x 2 hours)
    • Networks, services and applications design, organization and management.
    • Practical case (how to mount/create networks/subnets)
  • Access techniques in wireless networks simulation (1 week x 3 h)
    • Modelled wireless channel and network simulation.
    • Access techniques emulation and comparison of results.
  • Network traffic emulation (1 week x 3 h)
    • Generation of different types of traffic.
    • Analysis of traffic parameters.

The specific details on the organization of the practices (groups, calendar, weighting, ...) and on their follow-up (reports, attendance requirements, policy on originality of the code, ...) can be downloaded from the virtual campus.

Assessment Activities

Title Weighting Hours ECTS Learning Outcomes
Assessment of the development of the virtual portfolio (wiki) 30% The minimum grade required for this part is 5 out of 10 1 0.04 2, 18, 1, 17, 3, 4, 5, 8, 9, 7, 6, 11, 15, 14, 16, 22, 21
Class activities 15% No minimum grade is required for this part 2 0.08 1, 17, 3, 8, 9, 7, 6, 12, 13, 15, 14, 19, 22
Follow-up of the practical sessions 25% The minimum grade required for this part is 5 out of 10 3 0.12 2, 18, 3, 8, 7, 12, 13, 10, 15, 16, 22, 20
Knowledge validation tests 30% The minimum grade required for this part is 5 out of 10 4 0.16 2, 18, 3, 4, 5, 8, 9, 7, 6, 15, 14, 20


Basic bibliography

  • W. Stallings (2007). Comunicacions informàtiques i de dades, 8a Edició. Pearson Prentice Hall. Fundació privada Torrens-Ibern, 2010. (http://www.torrens-ibern.cat/?page_id=163)
  • W. Stallings (2004). Comunicaciones y redes de computadores, 7a Edición. Pearson Prentice Hall.
  • N. Barcia, C. Fernández, S. Frutos, G. López, L. Mengual, F.J. Soriano, F.J. Yágüez (2005). Redes de computadores y arquitecturas de comunicaciones. Supuestos prácticos. Pearson Prentice Hall.
  • M. Schwartz, "Mobile Wireless Communications", Cambridge University Press, 2005.

 Supplementary Bibliography

  • Kurose & Ross. (2012). Computer Networking: A top-down Approach, 6th Edition. Pearson.
  • D.E. Comer (2005). Internetworking with TCP/IP, 5th Edition. Prentice Hall.
  • A.S. Tanenbaum (2002). Computer Networks, 4th Edition. Prentice Hall.

Web links

  • http://cv.uab.es
  • https://wiki.uab.es/2122-ETT-FXT
  • http://williamstallings.com
  • http://www.cs.purdue.edu/homes/dec/netbooks.html


The laboratory sessions will use:

  • C compiler (an Integrated Development Environment, IDE, may be used).
  • Riverbed network simulator
  • Python, GNU Octave or Mathlab,