Мы поможем в написании ваших работ!



ЗНАЕТЕ ЛИ ВЫ?

Стандартизация Ethernet как услуги

Поиск

Стандартизация Ethernet как услуги — это еще одно важное направление работ в области Ethernet операторского класса, так как разнообразие реализаций этой услуги неминуемо приводит к разнообразию понятий, терминов и т. п., что весьма нежелательно.

Работой по созданию технологически нейтральных спецификаций глобальной услуги Ethernet занимается организация под названием Metro Ethernet Forum (MEF). Использование термина Metro в названии этой организации отражает начальную ситуацию развития Ethernet операторского класса, когда такие услуги предоставлялись в основном в масштабах города. Теперь же, когда технология Ethernet операторского класса стала при­меняться и в глобальных масштабах, название можно было бы и поменять, но оно уже стало настолько популярным, что такое переименование вряд ли случится.

Организация MEF разработала несколько спецификаций, которые позволяют потребителю и поставщику услуги разработать нужный вариант услуги Ethernet, используя термино­логию и параметры, независящие от конкретной внутренней реализации этой услуги про­вайдером. Такой подход удобен, он позволяет потребителям не знать терминологии той технологии, которую использует поставщик, например MPLS или SDH, и в то же время сознательно выбирать нужный ему вариант услуги.

В MEF вводится три типа услуг виртуальных частных сетей Ethernet, которые отлича­ются топологией связей между сайтами пользователей. Для того чтобы формализовать топологию связей, вводится понятие виртуального соединения Ethernet (Ethernet Virtual Circuit, EVC). Каждое соединение EVC связывает сайты пользователей в отдельную вир­туальную частную сеть, объединяя сетевые интерфейсы пользователей (User Network Interface, UNI).

Соответственно, имеются три типа соединений EVC (рис. 21.2):

§ «точка-точка» (двухточечная топология);

§ «каждый с каждым» (полносвязная топология);

§ «дерево» (древовидная топология).


Рис. 21.2. Три типа услуг Ethernet

 

В зависимости от типа используемого соединения различаются и типы услуг:

§ E-LINE. Эта услуга связывает только два пользовательских сайта через двухточечное EVC-соединение. Услуга E-LINE соответствует услуге выделенной линии.

§ Е-LAN. Эта услуга аналогична услуге локальной сети, так как она позволяет связать неограниченное число пользовательских сайтов таким образом, что каждый сайт может взаимодействовать с каждым. При этом соблюдается логика работы локальной сети — кадры Ethernet с неизученными и широковещательными МАС-адресами передаются всем сайтам, а кадры с изученными уникальными МАС-адресами — только тому сайту, в котором находится конечный узел с данным адресом.

§ E-TREE. Спецификация этой услуги появилась позже других; в локальных сетях ей аналога нет. Пользовательские сайты делятся на корневые и листовые. Листовые сай­ты могут взаимодействовать только с корневыми, но не между собой. Корневые сайты могут взаимодействовать друг с другом.

Кроме того, в спецификациях MEF вводятся два варианта каждого типа услуги. В первом варианте пользовательский сайт определяется как сеть, подключенная к отдельному фи­зическому интерфейсу UNI. Значения идентификаторов VLAN в пользовательских кадрах в расчет не принимаются. В названии этого варианта услуги к названию типа добавляется термин «частный» (private), например, для услуги типа E-LINE этот вариант называют частной линией Ethernet (Ethernet Private Line, EPL).

В другом варианте услуги к одному и тому же физическому интерфейсу UNI могут быть подключены различные пользовательские сайты. В этом случае они различаются по зна­чению идентификатора VLAN. Другими словами, провайдер внутри своей сети сохраняет деление локальной сети на VLAN, сделанное пользователем. В варианте услуги с учетом VLAN добавляется название «виртуальная частная», например для услуги типа E-LINE это будет виртуальная частная линия Ethernet (Ethernet Virtual Private Line, EVPL).

В своих определениях MEF использует термины «частная услуга» и «виртуальная частная услуга» не совсем традиционным образом, так как оба типа услуги являются виртуальны­ми частными в том смысле, что они предоставляются через логическое соединение в сети с коммутацией пакетов, а не через физический канал в сети с коммутацией каналов. Помимо указанных определений услуг, спецификации MEF стандартизуют некоторые важ­ные параметры услуг, например услуга может характеризоваться гарантированным уров­нем пропускной способности соединения, а также гарантированными параметрами QoS. Терминология MEF пока не получила широкого распространения. Во многих стандартах конкретных технологий по-прежнему употребляются собственные термины.

Технология EoMPLS

Псевдоканалы

Стандарты IETF описывают два типа услуг Ethernet операторского класса, которые стро­ятся с помощью технологии MPLS: VPWS (Virtual Private Wire Service) и VPLS (Virtual Private LAN Service). Различие между этими услугами в том, что VPWS эмулирует соеди­нение Ethernet с двухточечной топологией, то есть канал Ethernet, a VPLS эмулирует поведение локальной сети, то есть обеспечивает соединения с полносвязной топологией в стиле обычной локальной сети Ethernet.

Если использовать терминологию MEF, то услуга VPLS соответствует услуге E-LAN, а услуга VPWS — услуге E-LINE. При этом стандарты IETF описывают оба варианта услуг, как с принятием во внимание идентификаторов VLAN пользователя, так и без.

Обе услуги являются услугами MPLS VPN второго уровня (MPLS L2VPN), так как они позволяют предоставлять услуги VPN, взаимодействуя с пользовательскими сетями на втором уровне. В этом их отличие от услуг MPLS L3VPN, о которых рассказывается в главе 20.

Основным строительным элементом этих услуг являются так называемые псевдоканалы [63] (pseudowire), которые соединяют пограничные маршрутизаторы провайдера.

На рис. 21.3 показано три таких псевдоканала, соединяющих между собой пограничные маршрутизаторы РЕ1-РЕ4.


Рис. 21.3. Псевдоканалы в сети провайдера

 

Псевдоканалы представляют собой пути LSP второго уровня иерархии (называемого так­же внутренним уровнем), проложенным внутри LSP первого (внешнего) уровня. Обычно в качестве LSP первого уровня иерархии используются ТЕ-туннели MPLS, так как они обладают такими дополнительными свойствами, которых нет у путей, проложенных с по­мощью протокола LDP. На рис. 21.3 пути LSP первого уровня не показаны, чтобы заострить внимание читателя на псевдоканалах.

Псевдоканалы — это логические транспортные соединения, физически они могут про­ходить через промежуточные магистральные маршрутизаторы, однако для них они про­зрачны, то есть в нашем примере маршрутизаторы Р1, Р2 и РЗ просто не замечают их существование в сети.

Однако псевдоканал — это не просто логическое соединение LSP второго уровня иерархии, согласно определению, данному в RFC 3985 (http://www.rfc-editor.org/rfc/rfc3985.txt), у псевдо­канала есть более специфическое назначение.

Псевдоканал — это механизм, который эмулирует существенные свойства какого-либо теле­коммуникационного сервиса через сеть с коммуникацией пакетов.

Одним из вариантов применения псевдоканалов при эмуляции услуг Ethernet является передача псевдоканалом трафика одного пользовательского соединения, при этом псев­доканал эмулирует кабельное соединение между сетями пользователей. В примере на рис. 21.3 псевдоканал PW2 служит для организации соединения между сетями А и F через сеть провайдера. При этом кадры Ethernet, отправляемые сетью А в сеть F, инкапсулиру­- ются пограничным маршрутизатором РЕ1 в данные псевдоканала и доставляются им по­граничному маршрутизатору РЕ2, который извлекает эти кадры и отправляет их в сеть F в первоначальном виде.

Из определения, данного в RFC 3985, видно, что назначение псевдоканала шире эмуляции Ethernet — это может быть и эмуляции сервисов выделенных каналов технологий PDH или SDH, и эмуляция виртуальных каналов ATM или Frame Relay; однако в любом случае эмуляция такой услуги выполняется через пакетную сеть. Тип пакетной сети также не уточняется, так что это может быть и классическая сеть IP (без MPLS), и сеть IP/MPLS, и сеть ATM. Главное в этом обобщенном определении то, что псевдоканал скрывает от пользователей эмулируемого сервиса детали пакетной сети провайдера, соединяя поль­зовательские пограничные устройства (СЕ на рис. 21.3) таким образом, как если бы они соединялись с помощью выделенного канала или кабеля.

Для некоторых наиболее важных сочетаний эмулируемого сервиса и типа пакетной сети комитет IETF разработал отдельные спецификации псевдоканалов. Далее мы рассмо­трим только один тип псевдоканала, который нужен для предоставления услуг Ethernet операторского класса, а именно — псевдоканал эмуляции Ethernet через сети IP/MPLS, описанный в RFC 4448 (http://www.rfc-editor.org/rfc/rfc4448.txt).

Технически создать LSP второго уровня достаточно просто — для этого маршрутизато­рам, соединенным LSP первого уровня, нужно оговорить значение метки второго уровня, которое будет использоваться, чтобы различать LSP второго уровня внутри LSP первого уровня. Этот процесс иллюстрируется рис. 21.4. На нем изображены два пограничных маршрутизатора РЕ1 и РЕ2, соединенные псевдоканалом РЕ57. Однако рисунок оказался немного сложнее, чем можно было предположить — вместо одного пути LSP первого уров­ня мы видим два таких пути. Это связано с тем, что двухточечные псевдоканалы, которые служат для эмуляции Ethernet, по определению IETF всегда являются двунаправленны­ми[64], a MPLS LSP — это однонаправленный путь. Поэтому для создания двунаправленного псевдоканала требуется два однонаправленных пути второго уровня, вложенных в два однонаправленных пути первого уровня, что и показано на рисунке.

Рассматриваемый в нашем примере псевдоканал в направлении от РЕ1 к РЕ2 идентифи­цируется меткой 57, а туннель, который использует этот канал, — меткой 102. Поэтому при отправке кадра Ethernet, предназначенного для РЕ2, маршрутизатор РЕ1 помещает исходный кадр Ethernet в кадр MPLS и адресует этот кадр двумя метками: внешней меткой 102 и внутренней меткой 57. Внешняя метка применяется затем магистральными марш­рутизаторами PI, Р2 и РЗ для того, чтобы доставить кадр пограничному маршрутизатору РЕ2, при этом в процессе передачи кадра происходит обычная коммутация по меткам (на рисунке показано, что после прохождения Р1 внешняя метка получила значение 161). Внутренняя метка 57 требуется только пограничному маршрутизатору РЕ2, который знает, что эта метка соответствует псевдоканалу PW57, который нужен для связи с некоторой пользовательской сетью.


Рис. 21.4. Создание псевдоканала внутри туннелей MPLS

 

Как мы видим из рассмотренного примера, псевдоканалы работают только внутри сети провайдера, так что для эмуляции сервиса «из конца в конец» нужны еще какие-то элемен­ты и механизмы — и мы скоро их рассмотрим, но сначала давайте обсудим преимущества применения псевдоканалов поверх MPLS. Возникает естественный вопрос: нужны ли они вообще? Нельзя ли просто обойтись LSP первого уровня для передачи трафика Ethernet через сеть провайдера? В принципе, без псевдоканалов обойтись можно, но тогда для каж­дого нового пользовательского соединения пришлось бы создавать новый туннель (то есть LSP первого уровня), а это не очень масштабируемое решение, так как конфигурирование такого пути обязательно включает конфигурирование всех магистральных маршрутиза­торов сети. Поэтому одно из существенных преимуществ псевдоканалов состоит в том, что в сети провайдера нужно сконфигурировать только сравнительно небольшое число туннелей между пограничными маршрутизаторами, а затем использовать каждый из них для прокладки необходимого числа псевдоканалов. Создание нового псевдоканала также требует конфигурирования, но только пары пограничных маршрутизаторов, которые яв­ляются конечными точками псевдоканала, а это подразумевает гораздо меньший объем работы.

Можно заметить, что в технике MPLS L3VPN, рассматриваемой в главе 20, также ис­пользуются пути второго уровня иерархии для соединения пользовательских сайтов в виртуальную частную сеть. Причины применения этого механизма в MPLS L3VPN те же — хорошая масштабируемость.

Другим преимуществом псевдоканалов является их универсальность, то есть возможность их применения не только в сетях MPLS, но и в сетях других типов, например в «чистых» IP-сетях с туннелированием по протоколу L2TP, и не только при эмуляции Ethernet, но и при эмуляции других сервисов, например каналов PDH. Естественно, что при переходе к другой реализации псевдоканалов конкретные команды конфигурирования меняются, но концепция остается, и это помогает администраторам сети освоить новую технологию.

Услуги VPWS

Услуги виртуальных частных каналов (Virtual Private Wire Service, VPWS) исполняют роль «глобального кабеля», соединяя прозрачным образом две локальных пользователь­ских сети Ethernet через сеть оператора связи. Мы рассмотрим организацию такой услуги с помощью псевдоканалов MPLS на примере (рис. 21.5). При этом мы опишем дополни­тельные элементы механизма эмуляции услуги Ethernet, которые были опущены при описании назначения псевдоканалов.


Рис. 21.5. Организация виртуального частного канала Ethernet

 

Чаще всего пользовательские сети соединяются с пограничным маршрутизатором про­вайдера через выделенный интерфейс, который для глобальных услуг Ethernet должен быть стандартным интерфейсом Ethernet, например 100Base-FX. В этом случае услуга VPWS заключается в прозрачном соединении этих интерфейсов, когда сеть провайдера передает все кадры, которые поступают на такой интерфейс от сети пользователя. Иногда этот режим VPWS называют коммутацией портов пользователя.

Возможен и другой вариант услуги VPWS, когда сеть провайдера соединяет виртуальные пользовательские сети, то есть по двухточечному соединению передаются не все кадры, поступающие через интерфейс пользователя, а только кадры, принадлежащие определен­ной сети VLAN. Этот режим работы VPWS можно назвать коммутацией виртуальных локальных сетей, или VLAN-коммутацией.

Для того чтобы обобщить понятие интерфейса с пользователем, форум IETF ввел термин канала присоединения (Attachment Circuit, АС). АС поставляет входной поток пользо­вательских данных для сети провайдера, то есть ту нагрузку, которую нужно коммути­ровать. Употребляя этот термин, можно сказать, что услуга VPWS всегда соединяет два пользовательских канала присоединения; такое определение справедливо не только для услуг Ethernet, но и для услуг, например, Frame Relay или ATM, в этом случае каналы присоединения являются виртуальными каналами этих технологий.

На рисунке показаны также внутренние функциональные элементы пограничных марш­рутизаторов РЕ1 и РЕ2, которые эмулируют услуги VPWS вместе с псевдоканалом PW57. Модуль В (от Bridge — мост) работает по стандартному алгоритму IEEE 802.ID. Его роль в схеме эмуляции — выделение кадров Ethernet из общих потоков, поступающих на порты маршрутизатора, для передачи в псевдоканал. Тем самым модуль моста формирует логи­ческий интерфейс виртуального коммутатора. Например, если это режим коммутации портов, то модуль моста конфигурируется так, чтобы все кадры, пришедшие на соответ­ствующий порт от пользователя, направлялись для дальнейшей обработки в псевдоканал. Если же это VLAN-коммутация, то модуль моста выбирает для передачи псевдоканалу только кадры, помеченные определенным значением тега VLAN.

Выбранные модулем моста кадры поступают в псевдоканал не непосредственно, а через два промежуточных модуля — NSP и VS. Модуль NSP (Native Service Processing) обеспе­чивает предварительную обработку кадров Ethernet. Чаще всего такая обработка связана с изменением или добавлением тега VLAN, что может потребоваться, например, если объединяемые пользовательские сети применяют различные значения VLAN для одной и той же виртуальной сети. Модуль VS (Virtual Switch — виртуальный коммутатор) комму­тирует один из каналов присоединения с одним из псевдоканалов. Для услуги VPWS этот модуль работает «вхолостую», выполняя постоянную коммутацию единственного канала присоединения с единственным псевдоканалом. Однако для услуги VPLS, которая рассма­тривается в следующем разделе, виртуальный коммутатор играет важную роль, поэтому в обобщенной схеме эмуляции услуг Ethernet, представленной на рис. 21.5, он присутствует.

После обработки пришедшего кадра модулями NCP и VS он передается псевдоканалу. Конечные точки Т псевдоканала PW57 выполняют две операции:

инкапсуляцию и декапсуляцию пользовательских кадров в кадры MPLS;

мультиплексирование и демультиплексирование псевдоканалов в туннеле MPLS. Процедуру инкапсуляции и формат результирующего кадра определяет спецификация RFC 4448. У исходного кадра отбрасываются поля преамбулы и контрольной суммы, после чего он помещается в кадр MPLS с двумя полями меток: внешней (метка туннеля) и внутренней (метка псевдоканала), как это показано на рис. 21.6). На рисунке не показаны поля заголовка кадра MPLS, относящиеся к конкретной канальной технологии, которая используется на внутренних интерфейсах пограничных маршрутизаторов — как вы пом­ните, кадры MPLS могут иметь обрамление Ethernet, РРР, ATM или Frame Relay (в случае Ethernet это обрамление не имеет отношения к пользовательскому кадру Ethernet, инкап­сулированному в кадр MPLS).


Рис. 21.6. Формат инкапсуляции Ethernet поверх MPLS (RFC 4448)

 

В то время как первое два слова в заголовке, представленном на рисунке, являются стан­дартными заголовками MPLS, третье слово, называемое управляющим (control word), впервые появилось в стандарте RFC 4448. Это слово, которое является опциональным, предназначено для упорядочивания кадров, передаваемых по псевдоканалу — для этого каждому кадру маршрутизатором-отправителем присваивается порядковый номер, кото­рый помещается в управляющее слово. Потребность в контрольном слове возникает тогда, когда внутри сети провайдера происходит распараллеливание трафика туннеля, и кадры могут выходить из туннеля не в том порядке, в котором были посланы. Конфигурирование псевдоканалов, то есть согласование внутренних меток, используе­мых для идентификации и мультиплексирования псевдоканалов внутри туннеля, может быть автоматизировано. Для этого сегодня применяют протокол LDP или BGP. Обратите внимание, что речь идет о прокладке псевдоканала, а не самого туннеля, эти два процесса независимы, так что туннель может быть проложен, например, с помощью протокола RSVP ТЕ, а псевдоканалы в нем — с помощью протокола LDP.

Протокол LDP служит также для уведомления одним маршрутизатором РЕ другого об изменении состояния «работоспособен-неработоспособен» псевдоканала или канала при­соединения. Это очень полезное свойство, так как без него удаленный маршрутизатор РЕ не узнает об отказе непосредственно не присоединенных к нему отрезков эмулируемого транспортного соединения и будет пытаться его использовать, посылая данные. Протокол LDP позволяет в случае такого отказа отозвать метку, ранее назначенную псевдоканалу.

В завершение описания услуг VPWS хочется напомнить, что такое важное свойство услуги, как гарантированная пропускная способность, обеспечивается с помощью техники инжи­ниринга трафика, опирающейся в данном случае на соответствующие свойства туннелей MPLS. Аналогично обстоит дело с параметрами качества обслуживания (QoS) для вирту­альных соединений VPWS — они могут быть обеспечены с помощью стандартных меха­низмов QoS, таких как, например, приоритетное обслуживание, профилирование трафика, контроль доступа и резервирование ресурсов. И в этом случае MPLS является хорошим базисом, так как детерминированность туннелей MPLS делает контроль доступа намного более определенной процедурой, чем в случае IP-сетей с их распределенным (и вносящим неопределенность) механизмом выбора маршрутов.

Услуги VPLS

Услуги виртуальной частной локальной сети (Virtual Private LAN Service, VPLS) описаны в спецификациях RFC 4761 (http://www.rfc-editor.org/rfc/rfc4761.txt) и RFC 4762 (http://www. rfc-editor.org/rf c/rfc4762.txt).

Услуги VPLS соответствуют определению услуг E-LAN MEF, причем как варианту с учетом идентификаторов VLAN пользователей, так и варианту без их учета.

Так же как и в случае VPWS, сервис VPLS организован на базе псевдоканалов. Отличие заключается в том, что для каждого экземпляра VPLS используется собственный набор псевдоканалов. При этом каждый такой набор имеет полносвязную топологию, то есть все пограничные маршрутизаторы РЕ, участвующие в работе какого-то экземпляра VPLS, связаны друг с другом.

На рис. 21.7 показан пример сети провайдера, эмулирующей два сервиса VPLS. Поль­зовательские сети С1, С5 и С8 относятся к «серому» сервису VPLS, а сети С2, СЗ, С4, С6 и С7 — к «белому». Соответственно, набор псевдоканалов PW-B1, PW-B2 и PW-B3 объединяет пограничные Маршрутизаторы, к которым подключены сети «серого» сервиса VPLS, а набор псевдоканалов PW-W1, PW-W2 и PW-W3 — маршрутизаторы, к которым подключены сети «белого» сервиса VPLS (в нашем примере это одни и те же погранич­ные маршрутизаторы PEI, РЕ2 и РЕЗ, но если бы, например, сети С4 не существовало, то псевдоканалы PW-W2 и PW-W3 были бы не нужны).


Рис. 21.7. Организация услуги VPLS

 

Внутренняя организация пограничного маршрутизатора при оказании услуги VPLS по­казана на примере маршрутизатора РЕ1. Мы видим, что для поддержки каждого экзем­пляра сервиса VPLS пограничному маршрутизатору требуется отдельный виртуальный коммутатор, в данном случае это модули VPB и VPW (модули NSP не показаны, чтобы не загромождать рисунок, но они в РЕ1 входят, по одному на каждый экземпляр VPLS).

Как и в случае VPWS, модуль В выполняет стандартные функции моста и при этом фор­мирует логический интерфейс с каждым из виртуальных коммутаторов. Этот интерфейс может также формироваться на основе коммутации либо пользовательских портов,'когда весь трафик от определенного порта (или нескольких портов) передается на логический интерфейс, либо сетей VLAN, когда выбираются кадры одной или нескольких пользова­тельских сетей VLAN от одного или нескольких портов.

Однако если в случае VPWS виртуальный коммутатор выполнял простую работу по передаче кадров от логического интерфейса, то для VPLS этот модуль функционирует по алгоритму стандартного коммутатора (моста). Для этого виртуальный коммутатор изучает МАС-адреса и строит свою таблицу продвижения, как и обычный коммутатор. На рисунке показан упрощенный вид таблицы продвижения РЕ1, состоящей из двух записей: одна запись связывает адрес М8 сети С8 с псевдоканалом PW-B1, другая — адрес М5 сети С5 с псевдоканалом PW-B2. Пользуясь такой таблицей, виртуальный коммутатор не затапли­вает сеть, получая кадры с адресами М5 или М8, а направляет их в псевдоканал, ведущий к пограничному коммутатору, к которому подключена сеть с узлом назначения. Кадры с широковещательным адресом или адресом, отсутствующим в таблице продвижения, по­ступают на все его псевдоканалы, в данном случае — на PW-B1 и PW-W1.

Единственной особенностью виртуального коммутатора является то, что он не изучает адреса отправления кадров, приходящих с логического интерфейса. Это не требуется, потому что для интерфейсов, представленных псевдоканалами, виртуальный коммутатор работает по правилу расщепления горизонта (split horizon) — он никогда не передает на псевдоканалы кадры, полученные от какого бы то ни было псевдоканала. Тем самым пре­дотвращается образование петель между виртуальными коммутаторами, а доставку кадров по назначению гарантирует полносвязная топология. То есть любой кадр, полученный виртуальным коммутатором по псевдоканалу, всегда передается на логический интерфейс, соответствующий тому сервису VPLS, к которому относится псевдоканал.

Модуль моста В изучает только адреса, приходящие с пользовательских интерфейсов. Они служат ему для выбора нужного интерфейса в том случае, когда несколько пользователь­ских сетей относятся к одному сервису VPLS.

Конфигурирование РЕ может оказаться трудоемким занятием, так как в случае N погра­ничных коммутаторов нужно создать N (N - 1)/2 псевдоканалов. Кроме того, добавление любого нового устройства РЕ требует переконфигурирования всех остальных коммутато­ров. Для автоматизации этих процедур можно использовать вариант организации VPLS, описанный в RFC 4761, так как он предусматривает применение для этой цели протокола BGP. Вариант VPLS, описанный в RFC 4762, подразумевает распределение меток второго уровня иерархии с помощью протокола LDP, автоматизацию процедур конфигурирования он не поддерживает.

Ethernet поверх Ethernet

Области улучшений Ethernet

Рассмотрим более подробно те новые свойства, которые необходимо добавить к классиче­скому варианту Ethernet, чтобы превратить его в транспортную технологию операторского класса (Carrier Ethernet Transport, СЕТ), способную работать в сети провайдера в качестве основного транспортного механизма.



Поделиться:


Последнее изменение этой страницы: 2017-02-05; просмотров: 835; Нарушение авторского права страницы; Мы поможем в написании вашей работы!

infopedia.su Все материалы представленные на сайте исключительно с целью ознакомления читателями и не преследуют коммерческих целей или нарушение авторских прав. Обратная связь - 3.135.212.183 (0.013 с.)