Компьютерные Сети 4 курс — различия между версиями
Vpashkov (обсуждение | вклад) |
Vpashkov (обсуждение | вклад) м |
||
(не показано 27 промежуточных версии 2 участников) | |||
Строка 7: | Строка 7: | ||
'''Семинаристы:''' Никита Бегишев, Лев Хотов | '''Семинаристы:''' Никита Бегишев, Лев Хотов | ||
− | Чат для объявлений и обсуждений: | + | Чат для объявлений и обсуждений: |
ОПРОС: [https://forms.gle/tvxmMgY3pvr2Fs2n9 Форма] | ОПРОС: [https://forms.gle/tvxmMgY3pvr2Fs2n9 Форма] | ||
Строка 34: | Строка 34: | ||
| 1 | | 1 | ||
| 11.01.2020 | | 11.01.2020 | ||
− | | | + | | Введение в компьютерные сети. Классификация компьютерных сетей. История возникновения и развития глобальной сети Интернет. Архитектура сети Интернет. Модель OSI/ISO. Модель TCP/IP. |
|- | |- | ||
| 2 | | 2 | ||
| 18.01.2020 | | 18.01.2020 | ||
− | | | + | | Прикладной уровень. Архитектура и принципы организации сетевых приложений. Служба DNS. Электронная почта. Протоколы HTTP, FTP. |
|- | |- | ||
| 3 | | 3 | ||
| 25.01.2020 | | 25.01.2020 | ||
− | | | + | | Транспортный уровень. Службы транспортного уровня. Протокол UDP. Протокол TCP. |
|- | |- | ||
| 4 | | 4 | ||
| 01.02.2020 | | 01.02.2020 | ||
− | | Отмена лекции в связи с проведением Олимпиады "Высшая проба" | + | | Отмена лекции в связи с проведением Олимпиады "Высшая проба". |
|- | |- | ||
| 5 | | 5 | ||
| 08.02.2020 | | 08.02.2020 | ||
− | | | + | | Транспортный уровень. Управление потоком. Протоколы скользящего окна. Перегрузки. Управление перегрузками. AIMD. Max-min справедливость. |
|- | |- | ||
| 6 | | 6 | ||
| 15.02.2020 | | 15.02.2020 | ||
− | | | + | | Транспортный уровень. Управление перегрузками: алгоритмы TCP Tahoe, TCP Reno. |
|- | |- | ||
| 7 | | 7 | ||
| 22.02.2020 | | 22.02.2020 | ||
− | | [вторая пара] | + | | [вторая пара] Сетевой уровень. IP адресация. Протоколы IPv4 и IPv6. Службы ICMP, DHCP, NAT, PAT. Принцип работы маршрутизатора. <br> |
− | [третья пара] | + | [третья пара] Сетевой уровень. Задачи сетевого уровня. Алгоритмы маршрутизации. Маршрутизация по состоянию канала. Маршрутизация по вектору расстояний. Иерархическая маршрутизация. |
|- | |- | ||
| 8 | | 8 | ||
| 29.02.2020 | | 29.02.2020 | ||
− | | Протоколы маршрутизации (RIP, OSPF, BGP) | + | | Сетевой уровень. Протоколы маршрутизации (RIP, OSPF, BGP) |
|- | |- | ||
| 9 | | 9 | ||
| 07.03.2020 | | 07.03.2020 | ||
− | | | + | | Канальный уровень. Сервисы канального уровня. Обнаружение и исправление ошибок. Адресация. MAC адрес. Протокол Ethernet. Принцип работы коммутатора. Виртуальные локальные сети (VLAN) |
|- | |- | ||
| 10 | | 10 | ||
| 14.03.2020 | | 14.03.2020 | ||
− | | | + | | Жизненный цикл web-запроса. <br> Сетевая безопасность. Понятие сетевой безопасности. Основные угрозы и методы защиты. |
|- | |- | ||
| 11 | | 11 | ||
| 21.03.2020 | | 21.03.2020 | ||
− | | | + | | Перспективы развития современных сетей: программно-конфигурируемые сети (SDN) и виртуализация сетевых функций. |
|} | |} | ||
Строка 95: | Строка 95: | ||
| 25.01.2020 | | 25.01.2020 | ||
| 165 группа: Wireshark, traceroute, Docker | | 165 группа: Wireshark, traceroute, Docker | ||
− | 166 группа: сокеты, RFC 2616, Docker | + | 166 группа: сокеты, RFC 2616, Docker. Код с семинара [https://github.com/lfyuomr-gylo/hse-cs-sockets-intro здесь] |
|- | |- | ||
| 4 | | 4 | ||
Строка 114: | Строка 114: | ||
| 7 | | 7 | ||
| 22.02.2020 | | 22.02.2020 | ||
− | | | + | | 166 группа: перенесен на 29.02 |
|- | |- | ||
| 8 | | 8 | ||
| 29.02.2020 | | 29.02.2020 | ||
− | | | + | | 166 группа: 2 пары по iptables & network namespaces. Команды с семинара [https://gist.github.com/lfyuomr-gylo/3e4d9a5b2670e72cf878bd59665c94c9 здесь]. |
|- | |- | ||
| 9 | | 9 | ||
| 07.03.2020 | | 07.03.2020 | ||
− | | | + | | 166 группа: обсуждали варианты реализации RPC с использованием голых сокетов, JSON, Protobuf, HTTP, gRPC |
|- | |- | ||
| 10 | | 10 | ||
| 14.03.2020 | | 14.03.2020 | ||
− | | | + | | 166 группа: обсуждали способы организации авторизации в сетевом приложении. Пример кода для работы с JWT [https://github.com/notWhaleB/hse-networks-jwt-example/tree/jwt-example здесь]. |
|- | |- | ||
| 11 | | 11 | ||
Строка 148: | Строка 148: | ||
|- | |- | ||
| 1 | | 1 | ||
− | | | + | | Домашнее задание №1 |
| 24 февраля 23:59 MSK | | 24 февраля 23:59 MSK | ||
|- | |- | ||
| 2 | | 2 | ||
− | | | + | | Домашнее задание №2 |
− | | | + | | 15 марта 23:59 MSK |
|- | |- | ||
| 3 | | 3 | ||
− | | | + | | Домашнее задание №3 |
− | | | + | | 26 марта 23:59 MSK (продлен до 02 апреля 23:59 MSK) |
|- | |- | ||
|} | |} | ||
+ | |||
+ | '''Требования к ДЗ №2: | ||
+ | ''' | ||
+ | '''Требования к программе:''' | ||
+ | |||
+ | 1. Программа должна быть реализована на одном из следующих языков программирования: Python, C, C++, Java. | ||
+ | |||
+ | 2. Программа должна работать в среде Linux. | ||
+ | |||
+ | 3. Текст программы должен быть хорошо читаем, структурирован и оформлен в соответствии с правилами оформления программ на соответствующем языке программирования, а также содержать комментарии. | ||
+ | |||
+ | 4. Запрещено использование каких-либо готовых инструментов, реализующих парсинг GRAPHML или GML форматов. | ||
+ | |||
+ | 5. Программа должна корректно обрабатывать все возможные ситуации ошибок и некорректного пользовательского ввода. | ||
+ | |||
+ | 6. Привествуется использование графовых баз данных для хранения и работы с графами(список можно посмотреть, например, здесь: "Википедия: графовая база данных"), но не является обязательным. | ||
+ | |||
+ | |||
+ | '''В репозитории должен присутствовать README.md файл содержащий:''' | ||
+ | |||
+ | 1. ФИО, номер группы | ||
+ | |||
+ | 2. Список библиотек, которые используете в реализации | ||
+ | |||
+ | 3. Описанием, как собирать (с списком зависимостей, которые нужно предаварительно установить) | ||
+ | |||
+ | 4. Описание, как запускать вашу программу, как ей пользоваться | ||
+ | |||
+ | 5. в папку tests положить результаты работы Вашей программы на одной или нескольких топологиях (т.е. GRAPHML или GML файл топологии и соответствующие CSV файлы) | ||
+ | |||
+ | 6. Тестирование будет проводиться в ОС Ubuntu версии 18.04.4 LTS и выше | ||
== Экзамен == | == Экзамен == | ||
Строка 165: | Строка 196: | ||
По окончании курса проводится письменный экзамен. | По окончании курса проводится письменный экзамен. | ||
− | + | Экзамен состоится '''09 апреля (четверг)''', предварительный план: | |
+ | * 12:00 - 13:00 - экзамен | ||
+ | * 13:00 - 16:30 - проверка работ, подведение итогов, выставление итоговых оценок. | ||
+ | |||
+ | [https://drive.google.com/open?id=101qTYrrblAc0iJhfH7kA4MMWKSih5KsZ Список вопросов к экзамену.] | ||
− | Экзамен | + | Экзамен будет проводится в дистанционной форме. |
+ | Экзамен будет включать в себя: | ||
* теоретические вопросы с любым количеством ответов, | * теоретические вопросы с любым количеством ответов, | ||
− | * теоретические вопросы без ответов, требующие | + | * теоретические вопросы без ответов, требующие написания развернутого ответа |
− | + | ||
== Рекомендуемая литература == | == Рекомендуемая литература == |
Текущая версия на 15:45, 7 сентября 2020
Содержание
О курсе
Курс читается для студентов 4-го курса ПМИ ФКН ВШЭ специализации "Распределенные системы" в 3 модулe.
Лектор: Пашков Василий Николаевич
Семинаристы: Никита Бегишев, Лев Хотов
Чат для объявлений и обсуждений:
ОПРОС: Форма
Правила выставления оценок за курс
Итоговая оценка складывается из 2-х компонент:
- выполнение трех домашних практических заданий
- оценка за письменный экзамен
Oнакопл = 3/16 * OДЗ1 + 3/16 * OДЗ2 + 6/16 * OДЗ3
Oитог = О накопл + 4/16 * Оэкз
Накопленная и итоговая оценки округляются арифметически.
Текущие результаты
Лекции
Неделя | Дата | Темы |
---|---|---|
1 | 11.01.2020 | Введение в компьютерные сети. Классификация компьютерных сетей. История возникновения и развития глобальной сети Интернет. Архитектура сети Интернет. Модель OSI/ISO. Модель TCP/IP. |
2 | 18.01.2020 | Прикладной уровень. Архитектура и принципы организации сетевых приложений. Служба DNS. Электронная почта. Протоколы HTTP, FTP. |
3 | 25.01.2020 | Транспортный уровень. Службы транспортного уровня. Протокол UDP. Протокол TCP. |
4 | 01.02.2020 | Отмена лекции в связи с проведением Олимпиады "Высшая проба". |
5 | 08.02.2020 | Транспортный уровень. Управление потоком. Протоколы скользящего окна. Перегрузки. Управление перегрузками. AIMD. Max-min справедливость. |
6 | 15.02.2020 | Транспортный уровень. Управление перегрузками: алгоритмы TCP Tahoe, TCP Reno. |
7 | 22.02.2020 | [вторая пара] Сетевой уровень. IP адресация. Протоколы IPv4 и IPv6. Службы ICMP, DHCP, NAT, PAT. Принцип работы маршрутизатора. [третья пара] Сетевой уровень. Задачи сетевого уровня. Алгоритмы маршрутизации. Маршрутизация по состоянию канала. Маршрутизация по вектору расстояний. Иерархическая маршрутизация. |
8 | 29.02.2020 | Сетевой уровень. Протоколы маршрутизации (RIP, OSPF, BGP) |
9 | 07.03.2020 | Канальный уровень. Сервисы канального уровня. Обнаружение и исправление ошибок. Адресация. MAC адрес. Протокол Ethernet. Принцип работы коммутатора. Виртуальные локальные сети (VLAN) |
10 | 14.03.2020 | Жизненный цикл web-запроса. Сетевая безопасность. Понятие сетевой безопасности. Основные угрозы и методы защиты. |
11 | 21.03.2020 | Перспективы развития современных сетей: программно-конфигурируемые сети (SDN) и виртуализация сетевых функций. |
Семинары
Неделя | Дата | Темы |
---|---|---|
1 | 11.01.2020 | Отмена семинаров |
2 | 18.01.2020 | 165 группа: сокеты, RFC 2616
166 группа: стек сетевых протоколов, Wireshark, механизм работы traceroute |
3 | 25.01.2020 | 165 группа: Wireshark, traceroute, Docker |
4 | 01.02.2020 | 165 группа: Docker network, iperf, ssh tunneling, socat, socks5, private intranet
166 группа: ARP, nmap, ssh tunneling |
5 | 08.02.2020 | 165 группа: никто не пришёл
166 группа: обсуждение ДЗ 1, SOCKS5 over SSH tunnel, private intranet |
6 | 15.02.2020 | 165 группа: никто не пришёл
166 группа: повторное обсуждение ДЗ 1 |
7 | 22.02.2020 | 166 группа: перенесен на 29.02 |
8 | 29.02.2020 | 166 группа: 2 пары по iptables & network namespaces. Команды с семинара здесь. |
9 | 07.03.2020 | 166 группа: обсуждали варианты реализации RPC с использованием голых сокетов, JSON, Protobuf, HTTP, gRPC |
10 | 14.03.2020 | 166 группа: обсуждали способы организации авторизации в сетевом приложении. Пример кода для работы с JWT здесь. |
11 | 21.03.2020 |
Домашние задания
Отправка работ:
Тема письма : [номер группы] – ДЗ №<N> – Фамилия Имя
Пример: [165] – ДЗ №3 – Иванов Иван
Адрес для отправки работ: computer-networks.hse@yandex.ru
Задание | Жесткий дедлайн | |
---|---|---|
1 | Домашнее задание №1 | 24 февраля 23:59 MSK |
2 | Домашнее задание №2 | 15 марта 23:59 MSK |
3 | Домашнее задание №3 | 26 марта 23:59 MSK (продлен до 02 апреля 23:59 MSK) |
Требования к ДЗ №2: Требования к программе:
1. Программа должна быть реализована на одном из следующих языков программирования: Python, C, C++, Java.
2. Программа должна работать в среде Linux.
3. Текст программы должен быть хорошо читаем, структурирован и оформлен в соответствии с правилами оформления программ на соответствующем языке программирования, а также содержать комментарии.
4. Запрещено использование каких-либо готовых инструментов, реализующих парсинг GRAPHML или GML форматов.
5. Программа должна корректно обрабатывать все возможные ситуации ошибок и некорректного пользовательского ввода.
6. Привествуется использование графовых баз данных для хранения и работы с графами(список можно посмотреть, например, здесь: "Википедия: графовая база данных"), но не является обязательным.
В репозитории должен присутствовать README.md файл содержащий:
1. ФИО, номер группы
2. Список библиотек, которые используете в реализации
3. Описанием, как собирать (с списком зависимостей, которые нужно предаварительно установить)
4. Описание, как запускать вашу программу, как ей пользоваться
5. в папку tests положить результаты работы Вашей программы на одной или нескольких топологиях (т.е. GRAPHML или GML файл топологии и соответствующие CSV файлы)
6. Тестирование будет проводиться в ОС Ubuntu версии 18.04.4 LTS и выше
Экзамен
По окончании курса проводится письменный экзамен.
Экзамен состоится 09 апреля (четверг), предварительный план:
- 12:00 - 13:00 - экзамен
- 13:00 - 16:30 - проверка работ, подведение итогов, выставление итоговых оценок.
Экзамен будет проводится в дистанционной форме. Экзамен будет включать в себя:
- теоретические вопросы с любым количеством ответов,
- теоретические вопросы без ответов, требующие написания развернутого ответа
Рекомендуемая литература
- Таненбаум Э. С., Уэзеролл Д. Компьютерные сети. 5-е издание. Издательство Питер - 2012.
- Куроуз Дж. Ф. Компьютерные сети : многоуровневая архитектура Интернета. Издательство Питер - 2004.
- Куроуз Джеймс, Росс Кит. Компьютерные сети. Нисходящий подход.
- Олифер В.Г., Олифер Н.А. Компьютерные сети. Принципы, технологии, протоколы. 4-е издание. Учебник. СПб.: Питер, 2012. - 944с