Возможности XML
От: Oleg2  
Дата: 18.12.02 10:12
Оценка:
Всем привет.

У меня вопрос идеологического характера:
Существует некая модель, включающая в себя два компонента:

1. Сущность, которая способна посылать пакеты (UDP, IP, Ethernet и т.д.) по заданному шаблону.
2. Агент, который желает послать некоторую последовательность пакетов, используя сервис первой сущности.

Возникает трудность в разработке языка описания таких последовательностей в XML. Уместно ли вообще описывать такие шаблоны в XML?

Если считать, что пакет полностью описан в XML, то, на мой взгляд, его можно записать примерно так:

<udp>
<src_port>100</src_port>
<dst_port>200</dst_port>
<length type="auto"/>
<checksum type="auto"/>
<payload><repeat value="0x34" num="23"></payload>
</udp>

Данный вариант очень просто использовать.

Предположим, что мы хотим описать не просто один пакет,а скорее некоторую последовательность пакетов, используя один шаблон и какие-то "итераторы" к нему. Первое что приходит в голову — это написать примерно следующее:

<traffic-template>
<packet-template name="pkt_template1">
<udp>
<src-addr>100</src-addr>
<!-- The next field must be iterated -->
<dst-addr type="iterate">%d<dst-addr>
<length type="auto"/>
<checksum type="auto"/>
<payload data="data_template.data"/>
</udp>
</packet-template>

<rules>
<!-- Assume that we want to send 3 packets with
destination port 1234, 1235 and 1238 -->

<rule name="pkt_template1">
<iterator field="dst_addr" values="1234 1235 1238">
<!-- Here might be some other nested
iterators (Here iterator like a "for"
statement in programming languages)-->
</iterator>
<rule>
</rules>
</traffic-template>

Возможны сложные комбинации правил (Дополнительно можно передавать интервалы времени, короые должны быть между посылкой пакетов)

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

(Может быть вы встречались с чем-то подобным)

Что вы можете сказать по этому поводу?

Re: Возможности XML
От: Шура Латвия  
Дата: 18.12.02 12:17
Оценка:
Здравствуйте, Oleg2, Вы писали:

O>Всем привет.


O>У меня вопрос идеологического характера:

O>Существует некая модель, включающая в себя два компонента:

O>1. Сущность, которая способна посылать пакеты (UDP, IP, Ethernet и т.д.) по заданному шаблону.

O>2. Агент, который желает послать некоторую последовательность пакетов, используя сервис первой сущности.

O>Возникает трудность в разработке языка описания таких последовательностей в XML. Уместно ли вообще описывать такие шаблоны в XML?

да, конечно. по крайней мере противопоказаний нет

O>Если считать, что пакет полностью описан в XML, то, на мой взгляд, его можно записать примерно так:


O><udp>

O> <src_port>100</src_port>
O> <dst_port>200</dst_port>
O> <length type="auto"/>
O> <checksum type="auto"/>
O> <payload><repeat value="0x34" num="23"></payload>
O></udp>

O>Данный вариант очень просто использовать.

а лучше не держать имя протокола в элементе, а сделать что-то вроде
<protocol name="udp">
<item name="src_port" value="100"/>
<item name="desc_port" value="200"/>
</protocol>
вдруг потом какие-то XSLT писать придется, будет легче, наверно...

...

O>Как вы думаете уместо ли здесь использование XML. Может быть существуют технологии родственные XML, позволяющие реализовать подобный механизм обмена информацией более "гладко". Как мне кажется, мой пример не очень хорошо согласуется с концепцией XML, так как он в качестве данных содержит так же инфрмацию по идее близкую к информации оф орматировнии.


ну... если допустить, что у XML есть концепция, то это концепция крайне близкая к ООП. а с ООП в нашем несовершенном мире согласуется почти все

O>(Может быть вы встречались с чем-то подобным)


O>Что вы можете сказать по этому поводу?

XML (вкупе с XSD, XSLT [которые сами являются XML] и XPATH) является доступным и эффективным средством от которого просто нельзя отказаться.
разве что существует XML специально заточенный под эту задачу (вроде того, как math заточен под математику, а cml под химию)
O>

O>

O>

O>
Re[2]: Возможности XML
От: Oleg2  
Дата: 18.12.02 12:54
Оценка:
Спасибо за внимание.

А как быть с параметрическими пакетами (Пример с <traffic-template>)? Нельзя ли как-нибудь иначе представлять информацию об итераторах? Или при использовании XML в моем случае это верный путь? Я имею в виду то, что необходимо разработать систему тегов для описания так называемых итераторов и предоставлять эту информацию с параметризованным пакетом.

Почему-то мне не нравится эта идея. Что вы думаете по этому поводу?
Re[3]: Возможности XML
От: Шура Латвия  
Дата: 18.12.02 13:37
Оценка:
Здравствуйте, Oleg2, Вы писали:

O>Спасибо за внимание.


O>А как быть с параметрическими пакетами (Пример с <traffic-template>)? Нельзя ли как-нибудь иначе представлять информацию об итераторах? Или при использовании XML в моем случае это верный путь? Я имею в виду то, что необходимо разработать систему тегов для описания так называемых итераторов и предоставлять эту информацию с параметризованным пакетом.


O>Почему-то мне не нравится эта идея. Что вы думаете по этому поводу?

Не понятно почему не нравится. Берем, разрабатываем эту систему тегов, пишем XSD для этой системы. И сразу получаем возможность проверки соответствия XML-a этой схеме. Скажем, если элементу ptotocol разрешено появляться в шаблоне только один раз, а туда каким-то нехорошим образом затесался второй, то при проверке шаблона на соответствие схеме получим ругань. Надежность системы растет? типа того...
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.