Автоматизация решения задач сетевой тематики как пример проектной деятельности

старший преподаватель ф-та ВМК МГУ

В старшей школе в рамках проектной деятельности учащихся можно предложить задачу по автоматизации расчета IP-адресации в компьютерной сети. С одной стороны, решение такой задачи потребует от учащегося глубоко разобраться с принципами адресации в Internet Protocol (IP) версии 4, с другой – повысить свои навыки в области программирования. Для решения задачи могут быть использованы традиционные в школе среды разработки (Turbo Pascal, Free Pascal, Basic) либо применено объектно-ориентированное программирование.

Задача может быть разбита на несколько блоков и по, усмотрению учителя, может быть предложена как в полном объеме, так и частями в зависимости от конкретной ситуации. Также возможна групповая деятельность учащихся, в результате которой будет получено полное решение поставленной задачи.

Блок 1. По заданным IP-адресу и маске сети рассчитать систему адресации. Этих двух параметров достаточно, чтобы определить все параметры адресации: количество адресов в этой сети, количество адресуемых интерфейсов, начальный и конечный адреса, допустимые к назначению интерфейсам. Адрес широковещательной рассылки и адрес следующей сети.

Пример входных данных:: IP-адрес 152.215.43.25 и маска 21 бит (более короткая запись 152.215.43.25/21) или, в явном виде, 255.255.248.0.

Результат работы программы:

Number of addresses

2048

Number of hosts

2046

Network address

152.215.40.0

First IP of range

152.215.40.1

Last IP of range

152.215.47.254

Broadcast address

152.215.47.255

Next network address

152.215.48.0

Программа должна корректно обработать ситуации, если в качестве входных данных подаются адрес сети или адрес широковещательной рассылки.

Блок 2. Выделение подсетей равного размера в заданной сети. На вход программы подается адрес сети , опционально маска, требуемое количество подсетей и требуемое количество узлов, одинаковое для каждой из подсетей. В случае, если маска исходной сети задана, рекомендуется выполнить проверку корректности входных данных для решения задачи. Например, в сети класса С 192.168.1.0 выделить 4 подсети на 65 хостов в каждой невозможно и программа должна вывести соответствующее сообщение.

В результате работы программы должны быть выведены адреса подсетей и их маски.  Пример входных данных: выделить в сети 192.168.1.0/24 четыре подсети на 50 хостов.

Результат работы программы:

192.168.1.0/26

192.168.1.64/26

192.168.1.128/26

192.168.1.192/26

Опционально можно для каждого полученного адреса подсети отработать задачу первого блока.

Блок 3. Выделение подсетей неравного размера в заданной сети. На вход программы подается адрес сети , опционально маска, требуемое количество подсетей и требуемое количество узлов в каждой из подсетей. В случае, если маска исходной сети задана, рекомендуется выполнить проверку корректности входных данных для решения задачи. При проверке суммируются заданные количества хостов, увеличенные до ближайшего значения степени двойки. Полученная сумма адресов должна помещаться в отведенный диапазон, заданный маской. В этом случае выделение подсетей должно проводиться от большего количества хостов к меньшему.

Пример входных данных: выделить в сети 172.16.0.0 подсети для групп из 210, 150, 100, 64, 50, 45 и 2 хостов.

Результат работы программы:

172.16.0.0/24

172.16.1.0/24

172.16.2.0/25

172.16.2.128/25

172.16.3.0/26

172.16.3.64/26

172.16.3.128/30

Опционально можно для каждого полученного адреса подсети отработать задачу первого блока.

Блок 4. Суммирование сетей. На вход программы подаются адреса сетей и их маски. Программа должна определить, каким наименьшим количеством сетей могут быть просуммированы данные сети и вывести адреса и маски этих сетей, содержащие максимально возможное количество единиц.

Пример входных данных: просуммировать адреса с 10.0.9.0/24 по 10.0.19.0.24 (всего 11 сетей, маска каждой сети – 24 бита). В данном случае, для обеспечения наидлиннейшей маски диапазон потребуется разделить на две части и просуммировать каждую из них отдельно. В противном случае в суммарный адрес будет входить большое число несуществующих адресов сетей. Результат работы программы:

10.0.8.0/21 (для первых семи сетей)

10.0.16.0.22 (для оставшихся).

Код публикации: 

2056

Издание: 

Страница в издании: 

31