Slashdot Mirror


Will BEEP Simplify Network Programming?

hensley writes "There is a (not quite) new effort by the IETF to standardize a framework for network applications, called BEEP, the Blocks Extensible Exchange Protocol. Standardized in RFC3080, it takes care of all lower level tasks an application level protocol has to like framing, authentication and capabilities negotiation in a modular and lightweight way. In the current issue of Internet Packet Journal (a quite nice and free-as-in-beer technical publication by Cisco) is a well written Introduction to this framework. Why isn't anyone adopting this protocol besides some Java libraries like beep4j and PermaBEEP and a C library called RoadRunner. I couldn't find any applications based on this protocol, regardless of it's promised capabilities. Is everybody still inventing his own application layer protocol?"

195 comments

  1. BEEP, beep beep. by Anonymous Coward · · Score: -1, Offtopic

    Possibly not first post, but possibly so. Now at 0!

  2. testing by Anonymous Coward · · Score: -1, Offtopic

    testing the posting system

    1. Re:testing by Anonymous Coward · · Score: -1, Offtopic

      Test received.

    2. Re:testing by Anonymous Coward · · Score: -1, Troll

      Back to the drawing board with you....total failure. You were not first. HAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHAHA HAHAHAHAHAHAHAHAHAHAHAHA...ha. Loser.

  3. NNNNOOOOOOO!!! by TrollBurger · · Score: -1

    NO!!! beep will not simplify network programming!!!

    1. Re:NNNNOOOOOOO!!! by Anonymous Coward · · Score: -1, Offtopic

      thank you for the answer. Admins: please shut down posting to this article because it has been resolved. Thanks.

  4. Acronyms... by Suicide · · Score: 0, Offtopic

    Am I the only one who thinks that acronyms that are normal words just confuse non-technical people?

    I mean honestly, I've seen people get over RAM and SDRAM but when I tell them that there's a problem with the BEEP they are going to just flip out.

    1. Re:Acronyms... by asmithmd1 · · Score: 2

      BEEP could be the best new acronym since SCSI
      "Do I have a scuzzy hard drive?! What kind of person do you think I am?"

    2. Re:Acronyms... by Indomitus · · Score: 1

      It's better than people trying to pronounce non-real word acronyms. Tcl/Tk as 'tickle-talk' or VRML as 'vermel' for you old-schoolers out there are the worst offenders IMO. At least when I say BEEP I won't feel like a total goob.

    3. Re:Acronyms... by Mode0x13 · · Score: -1

      yet you are, in fact, a total goob.

    4. Re:Acronyms... by psamuels · · Score: 1
      BEEP could be the best new acronym since SCSI

      ObScore+1Interesing: SCSI was intended to be pronounced "sexy". I don't know why "scuzzy" caught on instead. Probably for the same reason "BEEP" won't take off. It tends to defy any serious discussion.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    5. Re:Acronyms... by Anonymous+QWord · · Score: 1

      Don't forget HTML as 'HotMail'...*sigh*.

    6. Re:Acronyms... by AJWM · · Score: 2

      Because -- for English speakers, anyway -- "missing" vowel sounds are only inserted between letters that cannot be pronounced together. Thus the natural pronounciation of "SCSI" puts the vowel between the C and the second S. The "cs" combo is rare in English (we use "x" or "cks" for that sound) but "sc" is common (scare, scarf, scam, score, scum ...).

      If the coiners of the acronym really wanted it pronounced "sexy", they should have come up with some "E" word between "Small" and "Computer".

      BEEP is pretty clearly pronounced how it sounds. Just so long as nobody confuses it with ping (or PNG, for that matter).

      --
      -- Alastair
    7. Re:Acronyms... by Anonymous Coward · · Score: 0

      Yes, and I would also like to point out that it is "Ess Queue Ell", not flippen' "Sequel"! A sequel is something you see at the cinema, not a frickin' database langauge!

    8. Re:Acronyms... by Gordonjcp · · Score: 2
      Yeah, it wouldn't have been hard, or unreasonable, to call it "Small *Electronic* Computer Systems Interface", would it? Bit more of a mouthful (oo-er, missus) but that's your SECSI drive right there.

      Of course, it used to be calles "SASI" for "Shugart Associates Computer Interface" (IIRC). And Atari had a variant called "ACSI", for ... Oh, you work it out. It had a funny D connector that you couldn't get when you wanted to make up cables, 19 pins or something.

    9. Re:Acronyms... by kasperd · · Score: 1

      ping (or PNG, for that matter).

      PNG is pronounced "ping".

      --

      Do you care about the security of your wireless mouse?
  5. Very interesting article by Anonymous Coward · · Score: 0

    And I appreciate the kind folks at slashdot for posting it!

    -- Mao Zedong, Esq.

  6. slashdot these days... by damiam · · Score: 1, Offtopic
    Why isn't anyone adopting ... a C library called RoadRunner.

    Is a simple question mark too much to ask for?

    --
    It's hard to be religious when certain people are never incinerated by bolts of lightning.
    1. Re:slashdot these days... by Suicide · · Score: 0, Offtopic

      They don't spell check, you want them to grammer and punctuation check?

    2. Re:slashdot these days... by Anonymous Coward · · Score: -1, Offtopic

      I don't know, is it. What do you think.

    3. Re:slashdot these days... by dattaway · · Score: 1, Offtopic

      Please rephrase your question in the form of an answer.

    4. Re:slashdot these days... by ErikTheRed · · Score: 0, Offtopic

      Because they know that AOHell-Time-Warner is going to sue the living shit out of them any minute now...

      --

      Help save the critically endangered Blue Iguana
    5. Re:slashdot these days... by Anonymous Coward · · Score: -1, Offtopic

      Well i think its funny.......

      What about you.

      "Due to bad posting, posting from this subnet and ip has been disabled."

      Works well too, I see.

    6. Re:slashdot these days... by King+of+the+World · · Score: 1, Funny

      Name the character that looks like a pierced ear.

    7. Re:slashdot these days... by Anonymous Coward · · Score: -1, Offtopic

      Trent Reznor.

    8. Re:slashdot these days... by ErikTheRed · · Score: 1

      How is this off-topic? Road Runner is a registered trademark of AOL-Time-Warner.

      --

      Help save the critically endangered Blue Iguana
  7. It's Out Of Date by Alt_Cognito · · Score: 0

    It strikes me that this protocol doesn't handle multiple connections to different servers/peers aka Kazaa/winMX, no authentication that the data being transferred is accurate aka Freenet, so why adopt such a protocol? If all you're going to do is re-implement these ideas on top of this B.E.E.P. stuff, really, what's the point?

    1. Re:It's Out Of Date by Wesley+Felter · · Score: 2

      It strikes me that this protocol doesn't handle multiple connections to different servers/peers aka Kazaa/winMX...

      There's nothing stopping an app from having multiple BEEP connections open at once.

      no authentication that the data being transferred is accurate aka Freenet

      It's impossible to do that in a generic way, so BEEP doesn't do it.

    2. Re:It's Out Of Date by ragnarok · · Score: 1
      It's impossible to do that in a generic way, so BEEP doesn't do it.

      TCP handles that just fine, it's called reliability. It's shitty application protocols that screw up your data.

      --
      Search first, ask questions later.
  8. [xdfgf] Fuck Jamie! He is a House Nigger by Anonymous Coward · · Score: -1, Offtopic

    AWARD FOR THE WICKED

    At first he tried not to scream; he looked at me with the eyes almost black with dilated pupils - and tried to give his stare an expression of defiance. He prepared himself for pain, stuck his teeth in the bottom lip of his bruised mouth. He knew what was going to happen; his gaze followed my hands that floated unhurriedly over the board. But when I turned the lever, he couldn't keep silent.

    His eyes became desperate, blood came out from under his teeth - and he cried out and couldn't stop crying as the jolts of current went through his body. I watched him convulse, his body spread and cuffed on wrists and ankles. I could see bluish veins stand out on the smooth skin of his legs and arms as a long spasm arched him. His head tossed back, he seemed to try to escape pain and the bonds that held him; both things were equally impossible.

    "It's just the beginning," I said knowing that he didn't hear me. I didn't hear my own voice behind his screams. I threw the lever down and his body went limp. "I want you to tell us the names of the other conspirators," I said quietly.

    Weak, wet and shaking, he didn't look so antagonistic any more, so sure in his ability to resist. The waves of pain washed off his superficial self-confidence and made him what he really was: a little more than a child - a hurt child - a pretty green-eyed child with a tangle of shoulder-length yellow smooth hair. A naked boy strapped to the interrogation machine in front of me.

    "I won't tell you fuckin' nothing."

    It apparently would take more that what I'd done to eliminate his stubbornness. Well, I expected it. And I knew how to deal with it.

    "Then you'll hurt again."

    "Whatever." He could've pretended he didn't care or was ready to take it but I knew he was not. No wonder; everyone who tried the sting of Ash Amir'ah would feel the same. Ash Amir'ah - the award for the wicked... Hagenti could be such poets sometimes.

    I switched on the current again - and listened to the boy scream - and this time I let it go on for a while longer. There was some blood coming from his nose and ears when I stopped. He sobbed and tried to stifle this sound.

    "You know we'll go on until you talk," I informed him. "Nothing can save you from it. You'll bleed more but you won't die. Eventually you'll break - so, what's the point? Spare yourself - and spare me from the efforts. It is all the same for your comrades, anyway - they are all dead."

    A ripple of pain distorted his bloodied, tear-streaked face.

    "Yes, they are dead," he whispered. "Why do you want to know about them?"

    "It's my work," I explained. "I need to file the facts. For the trial - and for the archive."

    I saw another grimace on his face as he listened to the strange, vibrant sound of my voice. I didn't know if he knew where it came from, knew about the implant in my throat - or it just irritated him, in a hurt, exhausted state as he was. He sighed before talking again:

    "You have no shame. It ain't a work you do, it is a betrayal."

    I shrugged.

    "I serve the Hagenti. I just do what I have to - and I am here not to discuss it with you."

    "Because you don't want to be reminded that you betrayed your own kind?"

    "My kind. Why ever would 'my kind' deserve my loyalty?"

    I reached for the lever again. The narrow metal hoop around the boy's head scintillated slightly as the current ran through it. The boy screamed - long enough for his voice to go raw and his breath shallow. When too gone with pain, he sounded not like a human, more like a growling animal, wailing incoherently. I wondered if he had any strength left for more insults when I switched off the machine.

    "How..." His voice was broken - and yet he found it necessary to ask me that. "How can you serve these... monsters?"

    "They are not monsters," I answered flatly. "They are the new rulers of the world - and you are a fool if you try to turn back time. Nothing will be as it was before the Hagenti. Accept it."

    "Nothing will be as before if people like you serve them. If people don't fight them."

    Fight. Stupid. No one could fight Hagenti. It was just senseless. As successful as trying to sink a battleship with a harpoon. I just wished they understood it.

    They must've conspired for months, another group of spoilt, stupid kids with too much time on their hands - and then, yesterday, they struck - trying to assassinate two of the Hagenti leaders. Six more lives sacrificed in a mindless attempt to do what was impossible to do. When would they learn that the aliens were indestructible? At least for the weapons that could be gathered after our planet was cleansed.

    Five boys and one girl turned into barely identifiable corpses that night, with Hagenti coldly unimpressed with the attack. The boy was taken alive, tried to kill himself and failed. I wondered if it was his broken wrist or a tiny moment of faintheartedness that stopped him from pulling a trigger. He paid dearly for it now, anyway.

    "I won't betray them..."

    "You already betrayed them - by staying alive."

    "No! It's you who is a traitor!" The boy's voice rose in pain that I caused him by saying that, became high-pitched, childish. His eyes, dark, hateful, caught mine and, before I could step away, he spat in my face, wet and warm. The back of my palm smeared red as I wiped my face.

    "I don't know what you wanted to achieve by that." I reached for the levers on the board again.

    "Don't make it personal, Kaiti."

    The voice was so soft, the shunt of breath, no more - and yet it seemed to reverberate through the air and through my ears for seconds and seconds. I turned to the stairs.

    He was there. So tall, an undeniable presence once you saw him - and yet never for all those years I learned to overhear his approach. It was incredible how a body so hard and huge could make so little noise.

    And how someone without a smooth curve in his appearance could have a voice of such softness.

    Rameesh; the Hagenti; one of those two they'd tried to assassinate yesterday. My master. His face, thick epidermis and bone plates that formed blunt, sparse features, was placid - the long eyes with transparent eyelids cold and tranquil. As usual. Serenity was the first expression Hagenti gave - and the last one. Serenity that I could never feel next to Rameesh.

    He made a few steps down the stairs - and for some tiny moment his appearance transformed - a vision - but the one I knew was as real as anything else could be. Another face, another body in place of the bulk of the alien. A man of breathtaking beauty, all slender limbs and floating hair and smooth golden skin and translucent, calm eyes.

    The other "face" of Hagenti.

    It was gone in a moment and, as always when it happened, I felt empty and dazzled, feeling like rubbing my eyes and trying to make sure I was not sleeping or mad.

    But of course, I was not. I knew the boy had seen it, too - as he turned away, spitting some more blood.

    "Lying bastards. They don't deceive anyone any more with their angelic faces."

    Ridiculous; the Hagenti didn't try to deceive anyone. It was just the way they were, the way they liked to be.

    "Shut up!" I reached my hand to the lever again.

    "His words don't have to touch you, Kaiti, any more than they touch me. He is just another spiteful human. Another one to be wasted. We had been prepared to waste as much of your population as it would be necessary for the rest to accept us - and we did it. Now just some polishing is left to do. A person here and there - until every chance of resistance will be eliminated."

    "You'll never... never..."

    I hit the button to stop the boy from talking. He must've bitten his tongue when the current hit because more blood spurted out of his mouth. I stopped looking at him and looked at Rameesh instead, at the perfect impassiveness of his inhuman face. There was no joy in him as he stared at the suffering of the enemy who'd tried to kill him; no compassion either.

    "Fuck... fuck you!" The boy's words were slurry when I stopped the current, blood overfilling his mouth and leaking out. His eyes dashed from me to Rameesh and back, like he didn't know whom he hated more, whom he wanted to accuse.

    "Worthless," Rameesh sighed out. "Worthless, and wretched one. Why don't you use mind control on him, Kaiti?"

    I managed not to shudder, just my hand trembled slightly, as I put it on the lever.

    "The mind control will render him incapable for the trial, sir."

    The smooth eyelids covered the clear eyes slowly and then rose again.

    "Who said anything about the trial?" A moment later he continued, his tone of a patient teacher explaining things that his silly student should've already known. "Our policy changed. We don't have interest in another trial. We don't want to intimidate anyone any more. What we are going to do is to crush the resistance completely. And then no one will prevent the loyal citizens from enjoying the order we created for them."

    The loyal citizens, I thought. Where did he think these rebel kids came from? I looked at the boy - he must've been born already after the invasion. He hadn't known another life apart from under Hagenti - and he still hated them.

    Perhaps Hagenti, even Rameesh, couldn't quite comprehend it. With their life span so overwhelmingly long, they couldn't imagine the lack of experience that the humans had, the lack of respect to their own life. People like me - people who were so far from our race that it was almost difficult to say who we were - we were fathomable for Hagenti. And easy to rule.

    "Control him, Kaiti. Take whatever information you need right from his mind and let's be over with it. I have different work for you to do."

    "Yes, sir."

    I pushed the levers again - and this time there was no scream; there was nothing, just the boy's eyes going wide and confused - and then acquiring dreamy, almost blissful expression.

    "So, tell us about the assault, human," Rameesh sing-sang.

    It was so easy; and this easiness rendered the agony of Ash Amir'ah pointless, rendered everything the boy was through pointless, too. He started talking; he didn't fight it any more, didn't even know he had to fight. It was not important what he said, just the places where they met, the plans they made. Perhaps the information was going to be analyzed by Hagenti computer to prevent analogous attempts; or, most likely, it would just go to the files - to the huge archive of Hagenti's history gathered on planets all over the galaxy.

    Hagenti had a history that we couldn't even imagine. They were experienced; they knew how to bend the new planets to their will and destroy those who didn't submit. They knew what was good for these planets and gave it to them, whether they were ready to accept it or not. No wonder we didn't stand a chance when they had come to us.

    The boy's quiet voice trailed away and he just stared in front of himself, the long dark eyelashes barely fluttering over his eyes. Blood still trickled from his nose but very sluggishly, and he licked it away from his lips without noticing it.

    "He looks so peaceful this way, doesn't he?" Rameesh said, walking along the desk. "Look at him, Kaiti. No hatred, no spite - just the pure surrender. Just what we want every one of you humans to be."

    His hand slid over the boy's thigh, the tips of long fingers brushing against his skin. The boy didn't flinch, nothing even changed in his eyes at this touch. The control device held him well.

    "It was easy for him to surrender, wasn't it? It's such a pity he hasn't done it before committing his crime. If he did, we wouldn't have to waste him eventually."

    Rameesh's ridged palm moved along the boy's body, from his groin over his abdomen and to his chest, the touch casual, almost affectionate, and yet leaving a trace of red abrasions on the skin. The boy's pupils were small, unexpanded, his gaze calm.

    "You humans are such awkward beings," Rameesh continued and I felt something knot inside me with recognition of the words he'd said to me years ago, when I met him for the first time. I was not mind controlled then, just had nowhere to go. All open for him to touch, to do whatever he wanted. "You behave as if you are invulnerable, as we are - but you aren't. And yet I have to admit there is some appeal in the way you are constructed."

    His hand kept travelling, unhurriedly, not lingering at any place of the boy's body, threading through the blonde strands of his hair, then returning to his chest. The boy's nipples were hard, with cold and with rough stimulation as Rameesh traced his fingers over them.

    "You have such available bodies, as if designed specifically for sex. What other race has both male and female specimens equally possible to be taken? What race has only flimsy clothes to cover their reproductive organs?"

    He didn't add that it was the only thing he really enjoyed during his stay on our planet; he'd told me that, though.

    "Maybe, your fixation on sex is going to be the undoing of you, humans."

    His hand thrust between the boy's legs, under his balls, as if checking the entrance. The motion was brutal enough to hurt if the boy could feel it. As it was, even his eyelashes didn't fall.

    "Release him, Kaiti."

    "What?"

    "You heard."

    For a split second the alien face of my master became human, the one of blinding beauty and deadly threat. I couldn't afford hesitation; I couldn't afford anything but obedience. The cuffs clicked softly, unlocking on the boy's wrists and ankles.

    "Get up, little worthless one. I want to look at you."

    The boy obeyed, like a sleepwalker, no surprise, no struggle in his face. His motion as he rose on his feet was smooth, gracious. I hadn't seen him a lot before he was cuffed - and at that time he was like a struggling animal - but probably this smoothness of movements was the normal way his body acted.

    He stood in front of Rameesh, the glimmering hoop of the control device on his head his only clothes. His stance was calm, relaxed, his bleeding hands loose against his sides.

    I looked at Rameesh as Rameesh watched him, the bare hint of interest in his eyes, as he took in the boy's narrow, tallish frame, the smooth lines of his body and the smooth silk of his flaxen hair. His mouth, even bloodied and with his lips split, still looked full and generous - and the unfaltering serenity of his stare was strangely appealing.

    The boy's eyes were green; a joyous, fair green color that reminded me something. Then I understood - it was apple green. Like those small, unripe apples that my friends and I picked up from the trees when walking to the river. How many years passed since then? Twenty? Suddenly I could feel that juicy, sweet and acerbic taste in my mouth.

    I knew those apple-trees existed no more; neither did the river or my friends. And the apples - should anyone be able to get any fruit now, it would cost half a fortune.

    The Hagenti gave us so many things. Food for everyone; peace; certainty that someone else would take care of our future. They took just a number of things; my hometown among them - it happened to be located in the part of the world that was to be eliminated. A small price to pay for security and stableness.

    "He is good-looking," Rameesh said.

    "Yes, he is," I agreed.

    Years ago, invading the planet, the Hagenti had taken an image of beauty from our minds and created their other face in correspondence with it - just as they did on all other planets apparently. I wondered if it helped them to succeed or if they just enjoyed it. The boy had the same kind of beauty - willowy, long-limbed, smooth-skinned, with long bright eyes and a wide, lively mouth.

    "And he is young," Rameesh added.

    "Eighteen, I think," I confirmed.

    Eighteen... Have I ever been this young? It seemed to be ages ago - but was probably just ten years ago. At eighteen I met Rameesh. It was twelve years after the invasion and the things were a mess. Such a mess that I sometimes wished I had never escaped death in my native town, had never moved to the outskirts of the port to survive by stealing and selling whatever I had, including myself.

    I had been arrested for a minor offense and Rameesh was the one who judged me. He didn't promise me anything - but he'd given me everything; he'd given me a second chance.

    "Kneel down, little human," Rameesh ordered.

    The boy obeyed immediately; his body slid down graciously, his eyes never leaving the point somewhere out there.

    "Look at me."

    As Rameesh reached to his face, the impression of the angular limb blurred slightly, giving out a picture of a male slim smooth arm, long, thin fingers caressing the boy's face slightly before Rameesh made him raise his face a little.

    "Kaiti, you see this perfect obedience? There is nothing he won't do that I'll tell him."

    "Nothing," I echoed.

    A little puppet on his knees - and Rameesh was the one who pulled the strings.

    "I want him to do things for me." There was no special expression in Rameesh's voice, nothing more pronounced then ever - but the meaning of the words slammed into my mind, the implication of them absolutely clear. "He is too handsome to waste him without taking everything he can give to us."

    The Hagenti; both poetic and pragmatic. Every thing must be taken to every possible use.

    "I want to do things to him, too," Rameesh added after a small pause. "And I want you to take care of it, Kaiti. I want him to feel it."

    "Restrained but responsive?" I asked.

    "No, I want him willing."

    I could do it; as successfully as I'd made him a dummy who followed Rameesh's orders without a trace of emotion. Just some different levers flickered. There was no place for hesitation in what I did, no argument I could or wanted to put up.

    I ran the fingers over the levers, attuning the boy's mind to the state Rameesh wanted from him. And yet the change, fast and undeniable, almost shocked me.

    The boy made a little sigh, as if he just woke up, a little shake of his head almost disbelieving. His eyes stopped on Rameesh slowly, without any animosity, rather with recognition. I knew it would happen - I had caused it myself, with a motion of my hand - and yet it mesmerized me to watch how the boy's face acquired a resigned, completely absorbed expression.

    He looked at Rameesh as if there was nothing else he would ever like to look at.

    Wasn't it what Hagenti always wanted from us?

    "Amazing..." There was something barely perceptible in the level, soft sound of Rameesh's voice - something almost breathless?

    The boy put his hands on Rameesh's hips and closed his face to the alien's belly. The blink of Rameesh's eyes, just a tiny moment longer than usual, was the only sign that gave him away.

    "So, little human. What do you want to do? Show me."

    It was a silky whisper, an apotheosis of intimacy - that meant nothing except for a peculiarity of Hagenti's larynx. A shiver ran through the boy's body - and his cock, limp before, started hardening steadily, until it stood upright against his belly.

    "Yes, that's right," Rameesh whispered. "That's how you want me. So, touch me if you want. Do what you want."

    With a strange, silent concentration the boy reached to Rameesh's bottom belly, pressing his mouth to the bone planes of the alien's groin, cutting his lips against the sharp ridges but not feeling it. There was no pain for him - nothing he could do to himself or Rameesh would do to him could hurt him.

    The warmth of the boy's breath matted the shiny surface of the armor of Rameesh's body - and the boy's tongue, licking and lapping, made it clean again. He licked the hard planes as if they were warm, responsive flesh of a loved one; his hands curled convulsively, clutched on Rameesh's hips - the fingers digging gently into the scales that no bullet or knife could harm.

    With all my experience of Ash Amir'ah, I still didn't quite know how the device worked, whether now the boy could see the other, beautiful cast of Rameesh. I supposed, however, that it was not that way. Most likely he saw what there was in reality - everything he'd hated so much - the bulky silhouette, armored limbs and bristled scales - and it seemed unbearably, irresistibly beautiful to him.

    The straightness of Rameesh's back didn't falter for a moment as the boy kept kissing him. There was nothing as plain and rude as triumph in the alien's eyes, no a joy of seeing his bitter enemy crushed and on his knees, plastering himself over his body. But there was something - something I could barely believe in.

    "I see how much you want it, little human," Rameesh said quietly, almost thoughtfully. "Should I give it to you?"

    A breath was caught in my artificial throat at these words. I regained control almost immediately and still it was enough to attract Rameesh's attention.

    "Do you want to say something, Kaiti?"

    "No, sir." My eyes were cast down, my voice having the hollow, jolting sound in it.

    "You'd better not, Kaiti. Do not question my actions - ever."

    "It never occurred to me."

    "Oh yes, it did." The quietness of his voice made his words sound kind. I knew they were not. I looked at the floor pointedly and still felt his eyes on me. I hoped he would look away soon.

    "Look at me, Kaiti," he said instead. I obeyed. "And keep looking."

    I looked at him as the planes that shielded his groin started moving apart slowly, the shiny bones sliding away to bare the purplish flesh, pulsing with blue plasma through the under-surface veins. I had seen this happen a number of times - and yet the impact of seeing it was so overwhelming that I was not sure I would be able to look away even if Rameesh wanted me to. I didn't know if I found the sight beautiful or repulsive. It stunned me, in any case, to witness the breach opening in the perfect cast of Rameesh's armor.

    The reproductive organ of the Hagenti - the only part of their body that was not of scaled or covered in bones ridges. Perhaps it was made this way because they were supposed to use it just once or twice in their lives, when the need for propagation occurred - and apparently even that was not a case for many Hagenti.

    I didn't know if to come to the idea of doing it with other species, doing it *not* for propagation demanded a twisted mind. Perhaps Rameesh was twisted, by Hagenti's measures. But he'd done it to me - and now he was going to do it to the boy.

    I should've expected it. Since the moment when he took interest in the boy - and yet I didn't quite believe he would go this far, would be aroused enough to remove his planes, to bare his most intimate part of the body.

    "Keep looking, Kaiti," Rameesh reminded.

    I kept looking, didn't dare lower my eyes. I watched Rameesh's cock emerge from the creases of flesh, the skin that covered it so thin that it almost seemed transparent. Inch after inch of the column of flesh, perfectly round. Perfectly smooth except for the gentle lines of the expanded veins.

    The boy eyed the solid pale shaft with a concentrated, absorbed expression. His hands reached to it tentatively and fell down like helpless birds.

    "Oh yes, little human," Rameesh hissed, interpreting this gesture unmistakably. "Don't be afraid. It's all for you. Take it."

    Suddenly a realization struck me - that with his cock out and erect, the human, beautiful appearance of Rameesh had never slid in front of my eyes.

    But for the boy it didn't matter; his eyes could see all the beauty he needed.

    His hand reached for Rameesh's cock, incongruously gently, and guided it to his mouth. For a few moments I thought he wouldn't be able to take it in, it was so thick, there was just no place there. But the boy's wish to please was stronger than protective reflexes of his body.

    It was going to tear his throat. I knew that all too well. I also knew that the boy was not going to feel it. He strained, trying to accommodate the width. The corner of his mouth ripped as the head of Rameesh's cock slid inside - and then deeper into his throat. I could see it as he struggled with his gagging reflex.

    I saw a thin flow of blood run over Rameesh's cock from the boy's mouth - right before the boy's lips swallowed the length.

    "That's it," Rameesh said. "I knew you would love it. You are what you are supposed to be, whore."

    Whore. The boy's movements were so precise, so bold, full of experience he didn't and couldn't have - and yet not the ones of a whore; but of a passionate lover. His head ducked up and down along the shaft. Yes, of a lover... if not for the wet sound of blood slurping in his torn throat.

    "Don't race so." There was something incongruous in these words, in the fact that Rameesh had to ask him not to swallow him so hard and fast - but there was no trace of irony in Rameesh's voice. The boy followed the order unquestioningly. "I want more of you. I want all of you."

    The boy looked up at him, Rameesh's shaft still in his hand. His throat moved convulsively and he expelled some blood, without feeling or realizing it.

    "Get up," Rameesh said.

    The boy's motions were both eager and dazed; he lost his balance slightly - and Rameesh caught him, almost as if caringly, and turned him around. I didn't know if the boy knew what was going to happen; I knew. I also knew that whatever happened, it would be only joy for him; the machine assured it.

    "Bend over," Rameesh whispered.

    There was no preparation - no need in it. One moment the Hagenti' pulsating organ, glistening with the boy's spit and blood was set between the boy's narrow buttocks - and at the next moment he was in, buried to the hilt in one powerful thrust.

    The boy's body arched with the strength of invasion, his head thrown back, his shoulders twisted behind - but there was no sound he made as the huge cock tore its way inside him.

    Rameesh didn't have to worry about hurting him. And even if he did, the alien wouldn't care all the same. But the damage was done, whether felt or not - and blood that slicked Rameesh's path so well was from the boy's ruptured insides.

    I knew it. Rameesh knew it, holding the boy's slight, thin body in a lock of his arms, almost cradling him.

    "Warm," Rameesh whispered against the boy's hair - and the boy moved as if trying to get closer, to merge himself with the alien. "Oh you little criminal, move on. Show me how much you want me."

    The boy's body reacted to the order immediately, violently. With a sigh he shoved back, impaling himself deeper on the cock. Rameesh nodded in agreement.

    "I'll give you what you want," he promised.

    He started thrusting. It sounded strange - so wet - the noise of blood inside the boy's body. I knew the rhythm so well - too slow, too heavy for a human, each movement like a knife stab. And yet the boy's cock was still hard as he murmured something, in pleasure that based nowhere in his body but in his abused, raped mind.

    We'd done to him what pain failed to do - made him a traitor and a whore for someone he hated more than anything else.

    I watched Rameesh sheathe himself into the boy's body, listened to the little sounds they made in their copulation and thought about my own ruined larynx, my ruined rectum - destroyed years ago with the same kind of invasion, by the same creature. By Rameesh who had entered me and possessed me - and nearly killed me.

    Only he didn't let me die. Instead of being left to bleed to death, I had the plastic implants inserted to replace my torn organs. Rameesh said I was even safe for sex since then, he could've used me as many times as he wanted, without a danger of killing me. Only he didn't want to - just a few times, when he was too bored. He said plastic didn't feel good, didn't feel real.

    The boy was real; warm and tight and opening to the invading shaft and oh-so-responsive at every thrust of Rameesh. I looked at his empty, lost face, at his mouth quivering in passion, as he accepted the alien inside himself. I didn't know if I envied him, if I hated him.

    Rameesh gripped on him, pulling him into an upright position, closer to the scaly chest. There was blood now, leaking where the harsh surface scraped against the boy's skin. I wondered if it was the warmth of the human's body Rameesh sought or this slick warmth of blood - and couldn't find an answer. My own scars didn't give me an answer and I hardly was to get one watching.

    "You are mine, little criminal," Rameesh whispered against the boy's ear. He got no reply; he didn't need one. What else could the boy say that would mean more than the painful, fluttering gasps he made and meaningless tears than ran from his eyes?

    "I want him to come, Kaiti."

    I saw Rameesh's hand wrap around the base of the boy's shaft, squeezing, sliding up and down slowly. A small tremor ran through the boy's body at that. These ridged fingers, so hard - I knew how they felt. I knew the pleasure they promised and gave, even as they flayed the tender skin of the cock on their way.

    I was not sure the boy really needed more intervention of the machine at this moment; his broken, wet breath became frantic, almost sobbing, as he thrust into the ring of Rameesh's fingers. But Rameesh wanted me to keep controlling him, so, I did.

    My fingers flew over the board, flickering the levers, and a heart-wrenching gasp the boy made told me

  9. This seems as useful as... by kingkade · · Score: 0, Offtopic

    the electricity over IP rfc

  10. I used it once... by Anonvmous+Coward · · Score: 4, Funny

    I used beep in a programming course in High School. Unfortunately, every time I used it people shouted "nosound!".

  11. Do we need complex acronyms? by poopbot by Anonymous Coward · · Score: -1, Offtopic

    Credits: dmg

    Yet again the Linux so-called elite, backed up by their pseudo intellectual cohorts of the w3c conspire to ruin Linux's chances in the marketplace by sowing confusion and complexity. As someone with years of experience in the marketing world, I am constantly amazed at the willingness of the W3C and other bodies to pollute the acronym space with their content free "TLAs".

    Basic marketing 101 (and an undergrad course in psychology) would tell them that the normal person is only capable of remembering approximately 7 items of data in their short-term memory, but now we have to remember HTTP, HTML, XML, XSL, DTD, PHP, SSL, DSL, ADSL, ISDN, Perl, etc etc etc

    This is a text book example of the tail wagging the dog from a marketing perspective.

    I have been following the standardisation of the web for many many months now, but one thing has become clear, E-commerce will NEVER become popular so long as there are so many confusing acronyms involved. The guys in charge of marketing Linux absolutely MUST work to reduce the number of acronyms. One possible solution would be to merge those protocols which are not all that different. For example, why not merge XML with SGML ? (they could call it XSGML or SXGML or perhaps XMSGML), they seem to address the same problems. Or would that be too simplistic a solution for their pampered elitist ivy-league minds to comprehend ?

    If something is not done URGENTLY, and I mean URGENTLY, Linux (and other more experimental derivatives such as FreeBSD) can never hope to be taken seriously as an e-commerce platform by the people who count - the accountants.

    The miracle of Linux is that anyone actually runs it at all, considering one seems to require a masters in computer science to install it! (contrast this with NT4 which was so easy to install, we let our receptionist upgrade her own machine).

    As usual my "open source" advice is free. Hopefully this time my valuable advice will be taken into account the next time the w3c smell an acronym brewing.

    Finally, in conclusion, as an American, I am saddened that the Internet seems to have been commandeered by a European based protocol. Was America so short of talent we had to buy the HTML protocol from Tom Berners-Lee at CERN ?

    Think of the security implications of the worlds strongest economy, running an e-commerce protocol developed by a foreigner from Socialist Europe. Remember the wall has not been down for that long. Who knows what kind of trojans might be lurking within the depths of these complicated protocols.

    I am afraid I am behind Al Gore on this point, how can this be necessary in the home of smart corporations such as Microsoft and Intel ? The answer is the vast subsidies given by European socialist governments to fund development of the HTML specification.

    The solution is clear. The federal government should mandate and strongly subsidise the use of Microsoft software for all US corporations involved in e-commerce. Only with a US-developed set of protocols can we be assured of the security of our transactions.

    - posted by poopbot: because we're all crapflooders at heart

    OuX4sRFq1J

    1. Re:Do we need complex acronyms? by poopbot by Anonymous Coward · · Score: -1, Offtopic

      *Psssst* hey buddy... your BEEP is showing

    2. Re:Do we need complex acronyms? by poopbot by antirename · · Score: 1

      I'm assuming that this is a troll... you let your secretary update her own machine? Did she also double as your system admin? If so,then give her credit for that. If not, you might have other problems. If it looks like a troll, acts like a troll, and sounds like a troll it probably is a troll.

  12. Duh by Anonymous Coward · · Score: 0
    Is everybody still inventing his own application layer protocol?
    Yes.
  13. Why? by KingAdrock · · Score: 0, Redundant

    It strikes me that being the first to implement a protocol is risky. What if nobody else implements it. What if it is trashed all together? What if it is shown that it isn't all that great after all?

    Get a few big companies to use it and watch the rest follow.

    1. Re:Why? by Anonymous Coward · · Score: 0

      What are you talking about dude? It's not going to replace IP or something. It's another useless standard; who care who uses it and who doesn't

  14. Agreed...BEEP is great work by robla · · Score: 5, Informative

    I've also been disappointed with the lack of uptake on BEEP. It's a very cool concept.

    BEEP is Blocks Extensible Exchange Protocol (RFC 3080). More details can be found at here.

    When we were designing RTSP, we looked for something like this, and at the time, the options weren't very appealing. We ended up using HTTP as a quasi-base protocol. I think it was the best solution at the time, but had BEEP been available, we'd have used it in a heartbeat.

    1. Re:Agreed...BEEP is great work by Anonymous Coward · · Score: -1, Offtopic

      congratulations on your karma whoring. the information from those links were already provided in those provided by the poster. thank you for giving them to us a second time.

    2. Re:Agreed...BEEP is great work by antijava · · Score: 1

      I tried playing with it. For an idea whose goal is to provide a platform-neutral protocol foundation, the implementations I found seem highly unportable. None of them would even come close to compiling on OS X.

      I originally intended to dump my proprietary protocol code, but it turns out easier to maintain what I already have than to get BEEP to even function.

  15. Must not be a programmer... by Arethan · · Score: 2
    Is everybody still inventing his own application layer protocol?
    By definition, the application layer protocol is built into the application. I think you meant to say, "is everybody still foregoing the use of a presentation layer to make the application layer do less work"
    1. Re:Must not be a programmer... by Scrybe · · Score: 1

      No by definition the aplication layer protocol provides the application with access to the network stack through an API.

      Back to network design school with you! :)

      just a quick example:
      HTTP is a protocol, a web browser is a program that uses HTTP to transfer files.

      --

      <This .sig left intentionally blank>

    2. Re:Must not be a programmer... by Anonymous Coward · · Score: 0

      actually, I'm going to have to agree with Arethan

  16. Sounds Cool by Vader82 · · Score: 1

    Sounds like a cool idea, however many programs need specialized network code to function efficiently. Most things are either done completely from scratch, or over an already established protocol. My dynamic DNS service just uses an HTTP request to update my records, and thats plenty easy. It could use BEEP but there isn't a whole lot of need. I think it is best used where it makes sense, not EVERYWHERE just because its a cool idea.

  17. That C Library doesn't actually use BEEP by Kaz+Riprock · · Score: 5, Funny
    The guys who designed the RoadRunner C Library modified the protocol. They called it Minimal Extensible Exchange Protocol. They then implemented the protocol twice to speed up the system calls.

    This way RoadRunner goes really fast with
    MEEPMEEP!(thp-thp-thp-thpppp) this was all just a funny lie

    --
    Mordor...a magical, mythical land where women are more rare than dragons--but where every man would rather find a dragon
    1. Re:That C Library doesn't actually use BEEP by Methuseus · · Score: 1

      You had me going there since I didn't read about RoadRunner .... until I thought about the fact that you spelled MEEP.

      --
      Two things are infinite: the universe and human stupidity, though I'm not yet sure about the universe. - A Einstein
    2. Re:That C Library doesn't actually use BEEP by red_dragon · · Score: 4, Funny

      Given that we're discussing this within Slashdot and its context, I suggest that we rename it to Minimal Extensible Exchange Protocol Toolkit. Additionally, this protocol should perform every action within a single, long transaction encapsulating multiple exchanges, e.g.:

      MEEEEEEEEEEEEEEEEEEEEEEEEEEEEEEPT!

      --
      In Soviet Russia, Jesus asks: "What Would You Do?"
  18. Coding by dcstimm · · Score: 1

    Now I know I can stay up all night to code get High on Caffine (mnt dew) and sleep in as long as I want, and I will live a longer life.

    I love it

  19. I'll be using BEEP for ... by mike_sucks · · Score: 1

    ... my game SWars plug, plug..

    As soon as I start working on it again, of course. If anyone wants to lend a hand, feel free.. ;)

    /mike

    --
    -- "So, what's the deal with Auntie Gerschwitz et all?"
    1. Re:I'll be using BEEP for ... by owenomalley · · Score: 1

      I think Luke has an extra hand somewhere...

  20. iCalendar by Wesley+Felter · · Score: 2

    The most interesting use for BEEP that I've found so far is iCalendar's Calendar Access Protocol (CAP).

  21. /.ed already? by Anonymous Coward · · Score: 0

    When I first tried to access the page I got error 500. This site could go down soon me thinks or atleast the java server pages seem to. (usually the first things togo when /.ed) So here's a hard link to their beep description.

  22. Slashdot story from 2000: by Anonymous Coward · · Score: 0

    Here's a slashdot story from just under two years ago on this exact protocol. Only at the time, it was named BXXP. Haven't heard a peep about it since.

    So, has anything changed since then? Is the protocol the same as it was then? Has anyone used this technology for anything?

    This protocol seems like a very nice complement to XML-RPC and SOAP-- XML-RPC for simple, one-way, message-based communications, this for complex, two-way, stream-based communications. Why haven't people recognized it as such? What's going on here?

    1. Re:Slashdot story from 2000: by ebyrob · · Score: 2

      for complex, two-way, stream-based communications.

      I believe TCP already solves this problem, perhaps herein lies the lack of excitement...

    2. Re:Slashdot story from 2000: by Sweetums · · Score: 2, Informative

      There are a couple of (significant) differences between BXXP and BEEP, but no fundamental changes. And the name change came about as a result of commentary from folks at the IETF session on the topic. It appears they were tired of the eXcessive use of the letter X, that and BEEP is easier to say.

      The BEEP activity I noticed most recently was on a proposal for syslog-reliable, and I believe there are some intrusion detection things using it in the academic space.

      There is also an excellent white paper (on beepcore.org I think) on the transport of SOAP using BEEP rather than HTTP, and it really is a pretty sweet fit, though early on they were in competition for mindshare at the IETF and neither wanted to be absorbed conceptually into the other.

      O'Reilly has published a book on BEEP by Dr. Marshall Rose, the principal BEEP designer. It's good.

      Sweetums

      --
      ------------------------
      Jack not name, jack job!
    3. Re:Slashdot story from 2000: by Cato+the+Elder · · Score: 2
      The BEEP activity I noticed most recently was on a proposal for syslog-reliable, and I believe there are some intrusion detection things using it in the academic space.

      I was working in the IDWG (intrustion detection working group) and was on team that started implementation of the BEEP version of the intrusion detection exchange protocol. It was certainly less work getting the BEEP version functional than the hacked-HTTP protocal that IAP (the first version of the protocol) was using. It also gave us some benefits vis a vis pluggable autentication/encryption. Most of the people involved got kinda busy, so I'm not sure how far the project has gone. I think we still have a webpage up under java-idxp on Sourceforge.

  23. a�� by term_0z · · Score: 0

    I am writing with my cool letters. æåø®ð Hope it is okey.




  24. My own application layer protocol by Jeremi · · Score: 4, Informative
    "Is everybody still inventing his own application layer protocol?"

    By and large, yes... it's a symptom of the needs of applications being so varied.

    (warning: blatant plug follows) For what it's worth, however, I've developed mine over the course of three years and a dozen or so projects, to the point where I think it's pretty mature and useful; it's open source, and portable to most environments, although the IETF has of course never heard of it... ;^)

    --


    I don't care if it's 90,000 hectares. That lake was not my doing.
  25. XATP, web services + pipelining by adam_megacz · · Score: 1

    Is everybody still inventing his own application layer protocol?

    Stateless, connectionless servers are a good idea (HTTP, NFS, SMTP); for this reason, most people are going with web services calls (XML-RPC or SOAP) and using HTTP pipelining to erase the TCP connection negotiation overhead. This solves 95% of the problems that BEEP is designed for.

    If you're still convinced that you really, really, really need a stateful connection, XATP is much simpler and gets the job done just as well as BEEP.

    1. Re:XATP, web services + pipelining by mindstrm · · Score: 2

      If we don't need stateful connections, why are most of the protocols you mention using a stateful connection?

    2. Re:XATP, web services + pipelining by antijava · · Score: 1

      Pipelining my get rid of connection overhead, but it still has a fundamental limitation: The requests must be responded to in the same order that they arrived. This is a BIG problem if you have a server that handles multiple request types, some of them fast, some of them slow. If you get a slow request followed by a dozen fast requests, those fast requests will have to wait until you can generate an answer for the slow request, since you MUST send the answer for the slow request first.

      This is the main reason why I implement my own protocol instead of just use HTTP. Supposedly BEEP can handle this case, but the code doesn't seem to compile, so I haven't tried it out.

    3. Re:XATP, web services + pipelining by ebyrob · · Score: 3, Insightful

      to erase the TCP connection negotiation overhead.

      Isn't this why UDP and other protocols exist on top of IP (or other routing layers). So you can forgo the overhead that a fancy session layer (like TCP) incurs.

      It seems to me that most of these new protocols are just trying to get a free ride through existing firewalls... Why can't we all just use IP the way it was meant to be used? (and move to v6 to alleviate addressing pinches)

    4. Re:XATP, web services + pipelining by Sweetums · · Score: 1

      Hmm. It sure used to.

      Yes, BEEP handles the case you talk about, but only if you have opened multiple channels within the connection. Each channel is processed synchronously, there is no guarante of synchronous or ordered processing between channels. This is not to say that the channel handlers can not impose this within the application, but the protocol itself does not.

      Sweetums

      --
      ------------------------
      Jack not name, jack job!
    5. Re:XATP, web services + pipelining by bill_mcgonigle · · Score: 2

      Why can't we all just use IP the way it was meant to be used?

      According to the beepcore FAQ, it's because of NAT and server pooling - you're not guaranteed that multiple requests for connections between two machines actually will be between the same two machines.

      As you mentioned, IPv6 would have prevented the problem. It's just a decade too late.

      --
      My God, it's Full of Source!
      OUTSIDE_IP=$(dig +short my.ip @outsideip.net)
  26. /.'ed by Anonymous Coward · · Score: -1

    Error: 500
    Location: /beepcore/home.jsp
    Internal Servlet Error:

    java.lang.NullPointerException
    at org.apache.jasper.compiler.JspCompiler.generateNew ClassName(JspCompiler.java)
    at org.apache.jasper.compiler.JspCompiler.(JspCompile r.java)
    at org.apache.jasper.JspEngineContext.createCompiler( JspEngineContext.java)
    at org.apache.jasper.servlet.JspServlet.doLoadJSP(Jsp Servlet.java)
    at org.apache.jasper.servlet.JasperLoader.loadJSP(Jas perLoader.java)
    at org.apache.jasper.servlet.JspServlet.loadJSP(JspSe rvlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.loadIfNecessary(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java)
    at org.apache.tomcat.core.ServletWrapper.doService(Se rvletWrapper.java)
    at org.apache.tomcat.core.Handler.service(Handler.jav a)
    at org.apache.tomcat.core.ServletWrapper.service(Serv letWrapper.java)
    at org.apache.tomcat.core.ContextManager.internalServ ice(ContextManager.java)
    at org.apache.tomcat.core.ContextManager.service(Cont extManager.java)
    at org.apache.tomcat.service.connector.Ajp12Connectio nHandler.processConnection(Ajp12ConnectionHandler. java)
    at org.apache.tomcat.service.TcpWorkerThread.runIt(Po olTcpEndpoint.java)
    at org.apache.tomcat.util.ThreadPool$ControlRunnable. run(ThreadPool.java)
    at java.lang.Thread.run(Thread.java)

  27. Dang. by TheSpoogeAwards · · Score: -1

    This is my second post for today. Jamie, you're a flaming homo.

    Attention! My journal contains a link to an interesting poll. Please take the poll.

  28. Not a Good Sign by Jah-Wren+Ryel · · Score: 1

    Error: 500
    Location: /beepcore/home.jsp
    Internal Servlet Error:

    java.lang.NullPointerException
    at org.apache.jasper.compiler.JspCompiler.generateNew ClassName(JspCompiler.java)
    at org.apache.jasper.compiler.JspCompiler.(JspCompile r.java)
    at org.apache.jasper.JspEngineContext.createCompiler( JspEngineContext.java)
    at org.apache.jasper.servlet.JspServlet.doLoadJSP(Jsp Servlet.java)
    at org.apache.jasper.servlet.JasperLoader.loadJSP(Jas perLoader.java)
    at org.apache.jasper.servlet.JspServlet.loadJSP(JspSe rvlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.loadIfNecessary(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java)
    at org.apache.tomcat.core.ServletWrapper.doService(Se rvletWrapper.java)
    at org.apache.tomcat.core.Handler.service(Handler.jav a)
    at org.apache.tomcat.core.ServletWrapper.service(Serv letWrapper.java)
    at org.apache.tomcat.core.ContextManager.internalServ ice(ContextManager.java)
    at org.apache.tomcat.core.ContextManager.service(Cont extManager.java)
    at org.apache.tomcat.service.connector.Ajp12Connectio nHandler.processConnection(Ajp12ConnectionHandler. java)
    at org.apache.tomcat.service.TcpWorkerThread.runIt(Po olTcpEndpoint.java)
    at org.apache.tomcat.util.ThreadPool$ControlRunnable. run(ThreadPool.java)
    at java.lang.Thread.run(Thread.java)

    --
    When information is power, privacy is freedom.
    1. Re:Not a Good Sign by Anonymous Coward · · Score: -1, Offtopic

      beep, beep, BOOM!

  29. Why isn't anyone adopting this protocol by Anonymous Coward · · Score: -1, Redundant

    Maybe this is way:

    Error: 500

    Location: /beepcore/home.jsp

    Internal Servlet Error:

    java.lang.NullPointerException
    at org.apache.jasper.compiler.JspCompiler.generateNew ClassName(JspCompiler.java)
    at org.apache.jasper.compiler.JspCompiler.(JspCompile r.java)
    at org.apache.jasper.JspEngineContext.createCompiler( JspEngineContext.java)
    at org.apache.jasper.servlet.JspServlet.doLoadJSP(Jsp Servlet.java)
    at org.apache.jasper.servlet.JasperLoader.loadJSP(Jas perLoader.java)
    at org.apache.jasper.servlet.JspServlet.loadJSP(JspSe rvlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.loadIfNecessary(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java)
    at org.apache.tomcat.core.ServletWrapper.doService(Se rvletWrapper.java)
    at org.apache.tomcat.core.Handler.service(Handler.jav a)
    at org.apache.tomcat.core.ServletWrapper.service(Serv letWrapper.java)
    at org.apache.tomcat.core.ContextManager.internalServ ice(ContextManager.java)
    at org.apache.tomcat.core.ContextManager.service(Cont extManager.java)
    at org.apache.tomcat.service.connector.Ajp12Connectio nHandler.processConnection(Ajp12ConnectionHandler. java)
    at org.apache.tomcat.service.TcpWorkerThread.runIt(Po olTcpEndpoint.java)
    at org.apache.tomcat.util.ThreadPool$ControlRunnable. run(ThreadPool.java)
    at java.lang.Thread.run(Thread.java)

  30. ^G^G^G^G by motox · · Score: 1

    Simple !

  31. well by mindstrm · · Score: 3, Insightful

    Why do you assume we should have ONLY ONE application level protocol? There is a REASON that the Internet is based on IP, and not, say, TCP only. or UDP.
    Or GRE.

    Or anything else we have yet to invent.

    Because we don't yet know the best way to use the network.

    Maybe we haven't adopted BEEP because you don't just 'create' a standard by declaring your stuff is better. Maybe it's because peopel ALREADY know how to do regular socket programming.

    Who knows.

    1. Re:well by Anonymous Coward · · Score: 0

      Because we don't yet know the best way to use the network.

      Or maybe because there isn't a single "best" way to use the network for every application. TCP, for example, has many properties that make it undesireable for networked games.

    2. Re:well by Anonymous Coward · · Score: -1, Troll

      you're misinformed. TCP runs on top of IP. UDP runs alongside IP.

    3. Re:well by Anonymous Coward · · Score: 0

      No, UDP runs on top of IP as well, just like TCP.

    4. Re:well by ebyrob · · Score: 2

      There is a REASON that the Internet is based on IP

      Amen Brother!

      I should point out for those that might've missed your point that TCP, UDP, and GRE are all "session" layer protocols, which are lower level than application, but still we don't have *just one* of them. So why should there be *just one* application layer?

      What's missing from this conversation is the presentation layer. IMHO, this is what XML is all about. Of course, what I think is really missing in industry is a new layer between presentation and application that all of us can ignore as we begin to focus on the presentation layer...

    5. Re:well by Anonymous Coward · · Score: 0

      I should point out for those that might've missed your point

      If anyone missed his point it's because it's poorly phrased and sounds like he's pulling a bunch of acronyms out of his ass.

  32. Definitely not new, but... by Nick+Arnett · · Score: 3, Informative

    BEEP came to life as BXXP at Invisible Worlds a few years back, where I was an executive. Our goal for a while was to use it to federate heterogenous search engines. Invisible is no more, but the protocol lives. A lot of thought by people with a great deal of Internet architecture went into it... but I'm not about to pass judgment on whether or not that's a good thing!

  33. Application Layer by NitsujTPU · · Score: 2

    Ironically, the layer at which my application specific needs are met? Yes, I am still writing that particular layer.

  34. And, in related news... by Anonymous Coward · · Score: -1, Troll
    Fremont, CA -

    VAsoftware, formerly worth something as LNUX, is offering prizes to the hacker who can recover their lost source code.

    "We were high on cheap crack", said CEO Ali Jenab, "and we tried a new system that limited posting from trolls. The unfortunate side effect was that trolls started posting as AC from 0, instead of from -1".

    Apparently, going back to the old system will not be easy. "We forgot the root password, and had to format and reinstall. Unfortunately, when recovering the tape backup, Malda forgot whether the command was 'tar xzvf' or 'tar czvf' and guessed wrong, so we lost the backup".

    Now VAsoftware is offering free Taco Snots (TM) to whoever brings the old source code back. No females may apply, since the VAsoftware staff is, at the same time, 100% homosexual and fully dyke-free.

  35. Totally blank web page by JamesKPolk · · Score: 1

    I don't think I'd trust a network protocol that has a web page that isn't even consistently viewable. Writing HTML is a lot simpelr than network programming, after all.

    1. Re:Totally blank web page by Ignominious+Cow+Herd · · Score: 0

      I don't think I'd trust a network protocol that has a web page that isn't even consistently viewable. Writing HTML is a lot simpelr than network programming, after all.

      Spelling simpler correctly is too...

      ...sorry, couldn't help myself.

      --
      Lump lingered last in line for brains, and the ones she got were sorta rotten and insane.
  36. XML is too much sometimes by Pauly · · Score: 4, Insightful
    I've played with BXXP/BEEP, and it is quite cool. Truly amazing P2P applications should be sprouting from its vines. However, the application that should be it's shining glory doesn't use it: Jabber. There must be someone out there in the jabber community that can expound on this.

    Hanging my head in shame, I'm one of those "still inventing his own application layer protocols". ASN.1 and RPC were also supposed to save me from doing this. Lately, I've found I've been implementing my own protocols using the concept of netstrings to suit my admittedly low-level needs better. Sadly, as XML and its derivatives mushroom in complexity, I find them less appealing.

    1. Re:XML is too much sometimes by Anonymous Coward · · Score: 0

      I haven't read all the replies to this article yet, but when I noticed this one, I needed to pause. Jabber is not peer to peer or whatever, jabber is based on a client/server model. It's not like I really care, just a little bored and felt like spouting off for a bit....
      http://www.jabber.org/faq.html#AEN212

      Don't get me wrong I don't mind jabber and beep seems like it would be useful,. Really, I could care less.

    2. Re:XML is too much sometimes by Anonymous Coward · · Score: 0
      Anyone who uses XML as a protocol is a fool. I can't believe all these jerks out there these days that think bloated plain-ascii protocols are where it's at. Sheesh. Most of the time I spend more coding time writing complex language parsers for when I have to deal with shit like XML or even HTTP than I would if I just banged out a simple octet-based protocol that used MORE THAN 7 FUCKING BITS PER OCTET! You can represent a lot of stuff in 8 bits, you know.

      It's a protocol. A protocol is meant to handle transient data and therefore it should be as small and fast as possible. Hint: having to implement a full language parser is NOT fast, either in coding time or at run time.

      Sure, it's not plainly human readable anymore, but then again, unless you're an english-speaker (and not everyone is) it wasn't necessarily human-readable to begin with.

      Save the bytes, I say! Save them, and prosper!

    3. Re:XML is too much sometimes by dmiller · · Score: 3, Insightful

      > the concept of netstrings [cr.yp.to]

      Only Bernstein could think that an ASCII representation of Pascal strings is original.

    4. Re:XML is too much sometimes by Anonymous Coward · · Score: 0

      The guy probably never heard of TYPE LENGTH VALUE...

    5. Re:XML is too much sometimes by psamuels · · Score: 1
      Only Bernstein could think that an ASCII representation of Pascal strings is original.

      D00d! An ASCII representation of Pascal strings?!? What will djb think of next? Hash tables? (:

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
    6. Re:XML is too much sometimes by evbergen · · Score: 1

      Hear, hear. The problem with all these protocol foundation is that way too much complexity has been put into them.

      It goes with my theorem: if you put someone to work on something full time and for a long time, that thing will eventually acquire all the complexity that person is capable of.

      XML, ASN.1 et al. are jut not modest enough. They should have a humble, serving role in the process, consuming as little developer- and CPU cycles as necessary.

      We shouldn't try to make high-level structured documents (SGML) into a RPC protocol. We shouldn't try to have a complete language (ASN.1) for transmitting data types. We should just define what information we want in the structure, and what facilities we want minimum, and come up with an extensible scheme to do it.

      To me, it sounds like a tree of attribute/value pairs of variable length is all that's needed, using 4 octet attributes and 4 octet length fields (e.g. the ILBM image format). You can nest blocks all the way you want, and applications can ignore blocks while still being able to parse the message.

      It's no wonder people invent their own protocols all the time at the *application* layer, as that's by definition application specific. We may wonder why we haven't got a *simple* presentation layer yet for streams and reliable, ordered datagrams, but I think the answer is that each attempt tried to do *way* too much.

      If you think about it for a minute, wouldn't you just ridicule the person to suggest SGML (XML) to solve this problem? The only reason is that it's the basis of HTML and people were looking at the RPC problem with a web-developer's mindset. That's all.

      --
      All generalizations are false, including this one. (Mark Twain)
    7. Re:XML is too much sometimes by Dr.+Manhattan · · Score: 2
      Of course, Pascal strings have a fixed maximum length, and netstrings don't. And they don't just handle ASCII, any type of data can be stuffed into them. Including, recursively, other 'netstrings'.

      Anyway, I didn't see anything on that page stating that this would change the world. The "original" part is coming up with a simple way to encode them that's trivial to parse, can be recursively embedded, and has minimal overhead with some chance for error-checking.

      It it earth-shattering? No, but it's clever.

      --
      PHEM - party like it's 1997-2003!
    8. Re:XML is too much sometimes by ceswiedler · · Score: 2

      OK, so you have the length of the string up front. And the length is encoded in ASCII, so it's theoretically unlimited. But how much space do you allocate for the length? How many bytes can it be?

      It seems much simpler to assume that a 4-byte binary length will be sufficient. I haven't had to deal with strings longer than 2^32 recently. If you DO have strings that large, your ASCII-encoded length is going to be 10 bytes long.

      If you want to include error checking, put a 4-byte CRC/checksum/adler32 after the length.

  37. Beep this by Anonymous Coward · · Score: -1, Redundant

    Error: 500
    Location: /beepcore/about_about.jsp
    Internal Servlet Error:

    java.lang.NullPointerException
    at org.apache.jasper.compiler.JspCompiler.generateNew ClassName(JspCompiler.java)
    at org.apache.jasper.compiler.JspCompiler.(JspCompile r.java)
    at org.apache.jasper.JspEngineContext.createCompiler( JspEngineContext.java)
    at org.apache.jasper.servlet.JspServlet.doLoadJSP(Jsp Servlet.java)
    at org.apache.jasper.servlet.JasperLoader.loadJSP(Jas perLoader.java)
    at org.apache.jasper.servlet.JspServlet.loadJSP(JspSe rvlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.loadIfNecessary(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet$JspServletWra pper.service(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.serviceJspFil e(JspServlet.java)
    at org.apache.jasper.servlet.JspServlet.service(JspSe rvlet.java)
    at javax.servlet.http.HttpServlet.service(HttpServlet .java)
    at org.apache.tomcat.core.ServletWrapper.doService(Se rvletWrapper.java)
    at org.apache.tomcat.core.Handler.service(Handler.jav a)
    at org.apache.tomcat.core.ServletWrapper.service(Serv letWrapper.java)
    at org.apache.tomcat.core.ContextManager.internalServ ice(ContextManager.java)
    at org.apache.tomcat.core.ContextManager.service(Cont extManager.java)
    at org.apache.tomcat.service.connector.Ajp12Connectio nHandler.processConnection(Ajp12ConnectionHandler. java)
    at org.apache.tomcat.service.TcpWorkerThread.runIt(Po olTcpEndpoint.java)
    at org.apache.tomcat.util.ThreadPool$ControlRunnable. run(ThreadPool.java)
    at java.lang.Thread.run(Thread.java)

  38. .NET functionality by gcshaw2nd · · Score: 1

    The functionality apparently provided by BEEP sounds similar to one aspect of the functionality that .NET is trying to accomplish - namely ease of network connectivity and data exchange. I wonder if .NET goals played any part in the design of BEEP.

    1. Re:.NET functionality by Sweetums · · Score: 1

      Pretty much nope....

      Sweetums

      --
      ------------------------
      Jack not name, jack job!
  39. stateful connection by adam_megacz · · Score: 1

    No state is maintained from one HTTP connection to the next, nor from one SMTP connection to the next.

    1. Re:stateful connection by Anonymous Coward · · Score: 0
      True.

      They apply state ontop of HTTP through Cookies (optional), and session ID in the url, and they can track state either way.

      They're both hacks. But I kinda like having no state when I want to, and that sites don't require it. HTTP isn't the web, but if a stateful protocol came into dominance I wouldn't think that'd be a good thing.

    2. Re:stateful connection by antijava · · Score: 1

      Stateless is actually better at the raw protocol layer. It's a LOT easier to implement transparent failover if you don't have to worry about state issues.

    3. Re:stateful connection by mindstrm · · Score: 3, Funny

      No state is maintained from one ftp connection to the next.
      No state is maintained from one telephone call to the next.
      No state is maintained from one quake session to the next.

      By that definition, all protocols are stateless.

    4. Re:stateful connection by JabberWokky · · Score: 2
      No state is maintained from one telephone call to the next.

      Then why do all these long distance calls show up on my bill to places like Texas, Tennessee, Florida, etc?

      --
      Evan

      --
      "$30 for the One True Ring. $10 each additional ring!" -- JRR "Bob" Tolkien
    5. Re:stateful connection by psamuels · · Score: 1
      No state is maintained from one ftp connection to the next.
      No state is maintained from one telephone call to the next.
      No state is maintained from one quake session to the next.

      The difference with HTTP is that a user "session" (browsing your web site) encompasses multiple HTTP requests. Each request stands alone and involves a single query, single response - it's not interactive. (OK I'm simplifying, I know you can do more with HTTP 1.1.) Same with NFS - the NFS 'mount' call just sets up state in the client - the server does not maintain any state between calls. Every NFS call stands alone - the server does not even maintain open files on behalf of the client.

      Various mechanisms are used to get around the lack of server state - HTTP cookies, magic session URLs, HTTP auth. In the NFS world, the lock manager uses a separate protocol from the NFS transaction protocol - because locking must maintain state on the server - that being the whole point. (That is why "lockd" is usually a separate process from "nfsd" - RPC mechanisms such as ONC make life much easier if you stick to one daemon, one protocol.)

      By contrast, FTP, voice-over-PBX and Quake are not stateless. A single "connection" (the FTP port 21 control channel, the phone call, the Quake data channel) corresponds to the user experience of a single "session". Note that in the case of FTP at least, some clients implement "auto-reconnect" logic in case the server disconnects - this is to maintain the illusion of an unbroken session. Such is not needed with HTTP, since the server isn't maintaining a connection across user requests anyway.

      See the difference?

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  40. RoadRunner mailing list by 1010011010 · · Score: 2

    I think it's pretty funny that the only message in the July mailing list archive for Road Runner is from that spam-bitch, "Christine Hall."

    List:
    http://lists.codefactory.se/pipermail/roadrunner/2 002-July/thread.html

    (codefactory is the company working on GtkHTML and Mr. Project, btw).

    --
    Napster-to-go says "Fill and refill your compatible MP3 player", which is a lie. It's not MP3. It's WMA with DRM.
  41. REST, Jabber, SOAP by tburke · · Score: 2, Interesting

    I looked at BEEP early on, when it was called BXXP, for doing RPC calls. At the time we decided that SOAP over HTTP was the better option for our application. I think that the world has moved on since then, today I would design using REST principles and HTTP, and take advantage of Apache. For applications requiring something more 'stateful' I would probably choose Jabber, which is reasonably well established, over BEEP. BEEP will have a hard time competeing with established extensible protocols which do, if not an excellent job, a good enough job for most applications.

    1. Re:REST, Jabber, SOAP by Sweetums · · Score: 1

      BEEP isn't RPC, though it can be used as a transport layer for an RPC profile (e.g. the rpc aspects of SOAP).

      --
      ------------------------
      Jack not name, jack job!
  42. to clarify by adam_megacz · · Score: 1, Interesting
    Technically, you can argue that UDP is not "connectionless", because when I send a UDP packet from my laptop, it causes it to dial up my ISP, making a PPP "connection" to the ISP.

    The idea is to introduce as little channel state (as few nested channels) as possible. BEEP is essentially "TCP over TCP".

    1. Re:to clarify by Hercynium · · Score: 2

      so, um, does the part of the program implementing UDP communication also responsible for routing and network interface management? If that's the case, not only are you using a really funny UDP implementation you've written half an OS around it. that's probably not the most efficient way to do things.

      BEEP is NOT "TCP over TCP". Using BEEP instead of, say, sockets for implementing network application layer protocols is more like using Perl for your CGI scripts instead of C.

      My point: Do you like mucking about with character arrays and pointers and making up your own regex implementations? Do you like having to worry about packet ordering algorithms when writing, for example, a client authentication protocol? Then use a standard TCP API. But if you like being able to specify your packet length with a funcion call then ship out your data without having to mung chop slice and dice all the while worrying about buffer overflows and packet framing, use BEEP.

      It's pretty much a higher-level framework to create TCP-based application protocols. (higher-level than using the OS's standard socket API's)

      If that sounds like "TCP over TCP" maybe you think Perl is "C on C"???

      OK now that I've ranted I might add that I've never written a network application using C, nor have I designed an ALP using BEEP, so I could be full of shit. At least I read the article.

      --
      I'm done with sigs. Sigs are lame.
    2. Re:to clarify by delta407 · · Score: 3, Informative
      Technically, you are completely and flat-out wrong to argue that UDP is anything but connectionless. TCP, a connection-oriented protocol, does handshaking with the remote computer (specifically, a SYN, SYN+ACK, ACK) before anything can take place; it forms a connection. UDP, on the other hand, allows you to just blast data back and forth, reducing latency since you don't need to send three packets before sending any data. UDP does not establish a connection to the remote host, it simply allows for data exchange.

      UDP is great for DNS since queries are small and the overhead of using TCP is large compared to the data exchanged. UDP is also great for things like cache servers using ICP, since then you only need one socket descriptor that can serve however many sibling/child caches you have.

      From RFC 768, entitled "User Datagram Protocol":
      This protocol provides a procedure for application programs to send messages to other programs with a minimum of protocol mechanism. The
      protocol is transaction oriented, and delivery and duplicate protection are not guaranteed. Applications requiring ordered reliable delivery of streams of data should use the Transmission Control Protocol (TCP).
      The RFC is two pages long (as opposed to RFC 793 -- TCP -- which has 84 pages) and explains that it is simply a packet of data that does nothing but carry data. It does no handshaking in the protocol, and does not establish a connection, and is thus connectionless.
    3. Re:to clarify by Dwonis · · Score: 2
      Hey, my karma just hit 42! So now I know the meaning of life, the universe, and everything!

      Hmm.. Perhaps that was the real question. None of this "how many roads" idiocy! :-)

  43. A different sort of network protocol by Anonymous Coward · · Score: 0

    with two example applications!

    www.advancedreality.com

  44. Beep? by skaffen42 · · Score: 2, Funny

    Damn, for a minute there I thought it was a post about the Beeb (the most wonderfull piece of computer hardware ever to come out of the UK, also known as the BBC Micro to the un-initiated).

    Oh how it takes me back. The days spend on the old Beeb, learning to program (in basic!) and playing those wonderful old games. I feel quite nostalgic about the old Beeb.

    Ah shit! Did I just admit that I actually learned to program on a BBC Micro? Dammit. There goes all my credibility. Nobody on Slashdot will take me seriously anymore! I can just hear the comments: Shutup Grandpa... go play with your 8 bit calculator Granpa... I have a question about Basic Granpa... what does "goto" mean Granpa...

    --
    People couldn't type. We realized: Death would eventually take care of this.
    1. Re:Beep? by dmiller · · Score: 2

      The Beeb was wonderful - I wish I still had mine.

      It offered a programming environment which allowed for 6502 assember embedded in interpreted BASIC. How deliciously perverse!

  45. Offtopic by Anonymous Coward · · Score: 0
    Nice story. What is it exactly, or doesn't it have a classification?

    ---

    I have trained slashdot moderators to moderate my posts according to the subject

  46. Not so impressed by Zeinfeld · · Score: 5, Interesting
    I was one of the authors of the HTTP protocol and did some work on HTTP-NG so I am broadly sympathetic to BEEP. However there are a number of reasons why it is not having a huge impact, some political, some technical.

    BEEP's main proponent, Marshall Rose was one of the main wheels in the OSI project. So much of the initial buzz came from his name alone. People were talking about the protocol before they read the drafts (oh yes that is normal for the IETF).

    I do have a bunch of quibbles technically. First using XML is a good idea, Using the obsolete SGML DTD mechanism to describe the protocol sucks. I think Marshall started to suplement the DTD with schema fragments but that makes things worse, not better, we now have two specs in one document, the schema version which is what people will implement and the DTD version which is normative.

    The other problem is that SGML is a real baaad choice for an encoding at that level. The main complaint about http is that the encoding is too verbose leading protocol exchanges to require multiple round packets instead of one. BEEP does not address that problem.

    Politically BEEP has bigger problems, first being that IETF does not have as much influence as it might appear when it comes to promoting new protocols. There haven't been very many IETF protocols that started in IETF process and took off like wildfire in the past ten years. HTTP took off and was brought into IETF process, same with TLS (SSL). Most successful IETF protocols had a userbase before the working group was formed.

    The problem with BEEP is that Marshall did not start with a constituency who had a problem that BEEP was the solution for. Instead he wrote the protocol and then went off looking for consumers. So we start to see Marshall popping up at random in working groups like SACRED peddling the BEEP Kool-Aid. The problem being that if you are doing a researchy protocol like SACRED the last thing you should be doing is layering it on someone else's research.

    After this happened a few times Marshall started to alienate folk like myself who might be interested in BEEP as an option but certainly were not going to allow him to insert himself onto our critical path.

    The other problem is the nature of the IETF these days. The problem is that they talk a good talk about being open and such, but it is really an old-boys club. The old-fart faction is strong on the IESG and IAB, they have known each other for 20 years and they don't want anyone messing with their turf.

    In theory the IETF process is open. In practice there are a bunch of shadowy cliques who make the real decisions in private. BEEP got to RFC status in record time because it was proposed by an IETF insider. Problem is that the IESG does not have much influence with the people in the Web Services world which is where all the interest in XML based protocols is at the moment.

    Most of the people I see at W3C and OASIS Web Services meetings have no IETF experience at all. Of those who do, none are IETF insiders and so an endorsement by the IESG does not have much force.

    For BEEP to take off it really needs an endorsement by one of the heavy hitters of the Web Services world which basically means IBM. Microsoft or Sun. I don't think that is very likely because everyone knows that there is a lot of work to be done to make Web Services work and there is simply nothing to be gained by putting BEEP on the critical path. People are more interested nailing down WS-Security, SAML, XKMS, geting WSDL to work and such.

    --
    Looking for an Information Security student project suggestion?
    Try http://dotcrimeManifesto.com/
    1. Re:Not so impressed by robla · · Score: 1, Interesting

      Hmmmm...."Zeinfeld". Pardon me for asking, but which HTTP author are you? I've met most of you, and like all of you, but quite frankly, at least one of you has a conflict of interest when it comes to opining on BEEP. You're entitled to an opinion, but I think your identity is important data in this case.

      As for the IETF being an old boys/girls club...well, yeah. Welcome to politics. I think the IETF has generally been a reasonably equitable old boys club.

      As for Marshall Rose, he kinda earned his way into the old boys club. He was co-author on many RFCs, including POP3.

      But enough about the politics, let's talk about BEEP on its own merits. Maybe the reference implementations are crappy (I can't speak one way or another on that), but the spec looks pretty solid to me. As I said before, it fits the requirements that we had when we were shopping around for a base protocol for RTSP.

      At any rate, I encourage people to do some digging themselves on this. I can't say that my experience is overly deep in this area, and I certainly haven't tried to design a protocol on top of BEEP, but based on what I know, BEEP looks like a pretty good idea.

    2. Re:Not so impressed by mrose · · Score: 5, Informative

      first, i'll apologize for running beepcore.org on a small server
      combined with tomcat. (if someone has some hints on making
      netbsd/apache/tomcat run more robustly in the face of significant load
      -- or if you can tell me how to get the thing to fail gracefully instead
      of tossing its stack -- please drop me a private email -
      mrose+mtr.slashdot@dbc.mtview.ca.us - thanks!).

      second, i have to praise this post for the way it seemlessly blends a
      little bit of truth, a little bit of wisdom, along with a healthy amount
      of ignorance and untruth. (my favorite untruth: marshall as the OSI
      guy. the actual truth: marshall killed OSI in the IETF on November 4th,
      1993 with the "roadkill in motion" speech.)

      it is easy to agree with the fact that beep suffers from both political
      and technical hurdles. as usual though, folks can disgree on the actual
      details.

      on the technical front: the beep specs use DTD not schema -- there
      aren't any schema fragments in either rfc3080 or rfc3081, you must be
      thinking of something else. the choice of DTD over schema is simple:
      DTDs are ugly, but schema sucks. that explains why everyone has their
      own pet language for defining the acceptable syntax of an XML
      document. if schema was a winner, we'd be seeing fewer alternatives
      instead of more.

      everyone has their own "main complaint" about http. i hadn't heard the
      verbose encoding one before, but maybe we should ask Keith Moore to add
      it to the list (cf., rfc3205).

      certainly, there's a lot we can agree on with respect to the political
      front, so i'll just focus on the part we don't agree on.

      the actual consumer for beep is the ietf. there used to be this joke
      that the apps area invented cloning, because all working groups formed
      argued exactly the same issues, over and over and over again, regardless
      of the problem to be solved.

      with beep, no one gets to argue those things any more (e.g., how to
      frame packets), instead they get to go off and presumably argue things
      specific to their application domain. (if folks want to understand the
      reasoning behind this, check out rfc3117.)

      the sacred working group, that you're so pissed off about me cutting
      into, is a perfect example. a bunch of guys focused on security issues,
      trying to write an application protocol. sorry, wrong skill set.

      contrary to popular belief, i don't need to go looking for trouble. in
      this case, it was a couple of ADs leaving an early sacred meeting,
      shaking their heads, and then asking me to beat some sense into some
      folks.

      if you're unhappy that i stuck my nose in your business, then all
      i can suggest is you get more clueful in the application design space,
      so "the management" doesn't feel they have to go out and get you
      help. particularly help that you don't like, and especially help that
      would rather be doing other things with other people.

      beep isn't research. it's a "best hits" collection of stuff dating back
      to 1981 that's known to actually work. the only new part of beep is that
      it got integrated into one coherent spec. and that's the reason that the
      iesg approved it after only a year. they were familar with what it did,
      how it worked, and they had a problem.

      of course, you are perfectly free to attribute this to an "old boys
      network" (i'm sure allison would appreciate that). when i find the
      actual "right wing conspiracy", i'll be sure to sign up. it will
      certainly reduce my frustration in dealing with the 100's of procedural
      hurdles that get thrown in my way at the ietf.

      finally, as far as web services go, well, let's just say that those guys
      could learn a lot from what xerox did back in the early 80's. in a few
      years, they may actually have something that works half as well as what
      xerox did... /mtr

    3. Re:Not so impressed by Twylite · · Score: 5, Insightful

      I'm sorry, but I can't buy much of this at all.

      BEEP is a ridiculous waste of time which equates to XML-encoded-TCP over TCP/IP. The many unsubtle problems that causes should be obvious; if they aren't, here are some:

      • Multiple channels to a single endpoint: typically not useful without routing; few protocols require multiple data bands, and those that do usually require QOS in at least one band, in which case you want separate TCP/IP connections where QOS will (hopefully) be supported by routers between you and the server.
      • XML protocol headers: Adds a massive amount of bandwidth and processing overhead, which achieve little if any benefit over a binary encoding. Contrary to popular bullshit, XML is not human readable (as if computers care about that), is not fast/efficient and is not programmatically simple to decode (2 grammars, 2 character encodings, 5 syntactically different data classes, and 2 orthogonal data models all in once specification with more BNF rules than C++!). The XML spec. states explicitly "Terseness is of minimal importance..." - certainly NOT what you want to use as header data on packets in a communication channel.
      • Security: BEEP proides just another mechanism for hiding attacks, and requires a new application level firewall which must feature a full XML parser (in order to monitor and firewall individual channels within the protocol). Not only that ... you think that Unicode attacks are bad? With several years of development behind them, MS XML parser and Xerces STILL aren't fully XML 1.0 compilant -- how many security compromises do you think may be present with all the encodings XML supports, and how many will be present in the hundreds of less mature products?

      You point out that SGML is a bad thing for encoding "at that level", but in the same breath say that XML is a good thing. Since XML is SGML-compatible, and largely employs the same syntax (but doesn't allow SGML short-cuts like leaving out closing tags), I fail to follow your argument.

      And in your musings about the IETF, has it ever struck you that maybe the IETF also think that adding an incomprehensibly slow transport layer on top of an existing and widely supported transport layer is a shit idea? BEEP is NOT an application level protocol, even if it wants to claim to be one.

      --
      i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
    4. Re:Not so impressed by zoydoid · · Score: 5, Informative

      sorry, but BEEP only specifies XML for use on the control channel, that is setting up and tearing down the initial connection and any new channels. an ad hoc parser is sufficient for this purpose. any application layered over BEEP is free to use whatever data format it wants.

    5. Re:Not so impressed by Anonymous Coward · · Score: 0

      XML still sucks, and is LISP reinvented badly. If I were writing a network protocol to be used by my lisp/linux box, I certainly wouldn't use the C/XML BEEP bloated monstrosity.

    6. Re:Not so impressed by Anonymous Coward · · Score: 0

      Nice to see you again, Henrik. How've you been?

    7. Re:Not so impressed by Zeinfeld · · Score: 5, Interesting
      second, i have to praise this post for the way it seemlessly blends a little bit of truth, a little bit of wisdom, along with a healthy amount of ignorance and untruth. (my favorite untruth: marshall as the OSI guy. the actual truth: marshall killed OSI in the IETF on November 4th, 1993 with the "roadkill in motion" speech.)

      Ah so you are claiming that the Marshall Rose who wrote The Open Book : A Practical Perspective on Osi is a different Marshall T. Rose. No sorry, Marshall you made a major technical contribution to OSI, or at least he claimed to have done so on the jacket cover of the copy I read. You did not 'kill it' at the IETF, OSI was killed in the marketplace long before 1993. The speech had the impact it did precisely because you knew the OSI stack.

      on the technical front: the beep specs use DTD not schema -- there aren't any schema fragments in either rfc3080 or rfc3081

      Well Duuuhhh read what I wrote. I checked the RFC just before posting and saw that. Schema may be 'ugly' as you put it, but none of the major XML programming platforms are based on DTDs, they are all based on schema. And BEEP is dead at Microsoft, Sun and IBM without schema, cold stone Deeeeeeaaaaadddd.

      with beep, no one gets to argue those things any more (e.g., how to frame packets), instead they get to go off and presumably argue things specific to their application domain. (if folks want to understand the reasoning behind this, check out rfc3117.)

      No, we have a five minute argument on whether to use BEEP or not, reject it and carry on.

      the sacred working group, that you're so pissed off about me cutting into, is a perfect example. a bunch of guys focused on security issues, trying to write an application protocol. sorry, wrong skill set.

      I wrote a fair bit of HTTP, I don't think that you have the right to go arround saying who is and who is not competent to write application protocols. If you want to get into a reputaion war you are going to loose this one. I think that BEEP is very naive when it comes to the problems that arose when it came to layering application protocols on it. I suspect that like LDAP and X500, by the time BEEP has been extended enough to be useful it will look like HTTP.

      if you're unhappy that i stuck my nose in your business, then all i can suggest is you get more clueful in the application design space, so "the management" doesn't feel they have to go out and get you help. particularly help that you don't like, and especially help that would rather be doing other things with other people

      I only attended the one SACRED meeting and your comment on 'the management' is quite illustrative of the George W. Bush style crony-standards process the IETF is becomming notorious for.

      finally, as far as web services go, well, let's just say that those guys could learn a lot from what xerox did back in the early 80's. in a few years, they may actually have something that works half as well as what xerox did... /mtr

      Standard old fart response 'we did it all twenty years ago sonny', 'and we did it better'. Yeah and you should have seen the anti-gravity machines we made twenty years ago.

      I don't much care for the arrogance of the IETF 'management' as you call them. I certainly don't appreciate folk who think that they have the right to make the type of off-hand blanket pronouncements on other people's work that you and they make habittually without backing it up. Your Xerox comment is absolutely typical of IETF old fartism, you want to have the right to be dismissive, you don't have the technical arguments on your side. So instead of detailing a real technical issue you allude to an earlier system, the more obscure the better. The message: 'I am too important to have to justify my comments but I believe that you are not competent to work on this problem'.

      Your comment on Web services only illustrates that you really don't understand what is going on, what people are trying to achieve or why previous efforts such as CORBA failled. I am not going to explain why or how Web Services are different because I am faaaar toooo important. I may not be old enough to have achieve old fart status but I can certainly play the part on the net.

      Still you are right on one battle, if the IETF is to regain some relevance at the upper end of the protocol stack adopting XML as the way to author RFCs is the only way forward. However the IETF is going to have to do a lot more than produce its documents in a format that does not look like utter crap from a teletype before I am going to take any standards there. I want a genuinely open and geuinely transparent process. I want standards groups to complete in 18 months, not 10 years - and yes it is possible, the SAML group I was a member of developed the basic specs which have been adopted as the basis for liberty in 18 months.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    8. Re:Not so impressed by Zeinfeld · · Score: 4, Interesting
      Hmmmm...."Zeinfeld". Pardon me for asking, but which HTTP author [ietf.org] are you?

      I am not one of the Editors, I am listed as a principal contributor before the group members.

      I've met most of you, and like all of you, but quite frankly, at least one of you has a conflict of interest when it comes to opining on BEEP.

      Not so in my case, I was not big into HTTP-NG, I was not involved in DIME or Multiplex. I am not HFN which should be bloody obvious if you know him. However I am a friend and my company does a lot of work with his (Microsoft), but I also do a lot of work with Sun.

      As for the IETF being an old boys/girls club...well, yeah. Welcome to politics. I think the IETF has generally been a reasonably equitable old boys club.

      It is reasonably equitable until you actualy try to get things done. Look at DNSSEC, they have been trying to deploy the thing for ten years. In the meantime the .com zone has grown so large that the scaling bug in the design of the NXT record means that the protocol is not going to be deployed by the registrar for those zones without modification. A fix has been proposed for two years and has been agreed on the list. But the fix is currently blocked by secret discussions between the 'DNS Directorate' which is a closed and entirely unaccountable group. The not so obvious strategy being to delay OPT-IN until the DS flag day has gone through and then reject OPT-IN as requiring a flag day. Just about the only reason that strategy makes sense is if the IESG wants to delay DNSSEC for at least a year and risk a lawsuit.

      On IPSEC the group is currently facing two problems that have been known for five years. First IPSEC was deliberately designed to make it impossible to use through NAT devices. I remember the comments in the WG at the time, people took it as a badge of honor to sabotage NAT - pretty lame when one of the major reasons NAT is needed is a design blunder by the IETF itself when it choose the IP address space to be smaller than the human population of the world - and on reliable authority this was done to allow an address to fit into a single register.

      The other problem with IPSEC is that they ignored the problem of PKI and so we now have a wildly successful deployment of IPSEC for VPNs, a function which it is particularly ill suited for, and almost no extra-net or genuine internet deployment.

      At any rate, I encourage people to do some digging themselves on this. I can't say that my experience is overly deep in this area, and I certainly haven't tried to design a protocol on top of BEEP, but based on what I know, BEEP looks like a pretty good idea.

      I haven't tried to implement a protocol on top of BEEP either, and I am even less likely to do so given Marshall's outburst earlier in the thread.

      My point about old boys network is that I have no confidence that BEEP is ready for prime time. I will not be confident until someone actually does build a protocol on top and demonstrates the bugs have been ironed out. HTTP looked pretty straightforward until people tried to use it.

      The IETF is in severe danger of becomming irrelevant, as attendence at recent meetings is deonstrating. The much bigger problem with the IETF is that they really don't feel any responsibility to anyone but themselves. They take their role as supreme Internet standards body for granted.

      The average IETFer has pretty much a slashdot mentality. They have plenty of contempt for technology have nots while curiously tollerating computing environments from the stone age. MIME is an IETF standard but send an attachment to an IETF mailing list and the old-fart faction complain that their antiquated mailer can't handle it. Send HTML mail and they will have appoplexy. (And if you think HTML is a bad idea I presume you read Slashdot in the no-graphics, plaintext mode).

      The average IETFer does not think that they have an obligation to the community of Internet users or the vendors that support them. So holding up a protocol for a year while an AD who does not have a clue about security 'gets comfortable' with a security modification advocated by the Security ADs, well that is not a problem. Designing a protocol that breaks through NAT, well that is not a problem, and so on.

      I am certainly not antithetical to the aims of the IETF. However there is a reason why I helped take the Web standards out of the IETF and set up W3C, there is also a reason why I am currently helping take standards from W3C to OASIS. There is a free market in standards bodies and the IETF is in dire need of a severe kick up the pants.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    9. Re:Not so impressed by Zeinfeld · · Score: 2
      Nice to see you again, Henrik. How've you been?

      Hah, the only time Henrik talks this way is after too many blue drinks with Mario.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    10. Re:Not so impressed by Zeinfeld · · Score: 2
      And in your musings about the IETF, has it ever struck you that maybe the IETF also think that adding an incomprehensibly slow transport layer on top of an existing and widely supported transport layer is a shit idea? BEEP is NOT an application level protocol, even if it wants to claim to be one.

      If the IESG thought that it is strange that BEEP should be allowed to progress through the process at such a breakneck pace and then have ADs going round telling others they have to give reasons why they are not using it.

      You are right about BEEP really being a transport layer protocol. Actually in the ISO model Marshall claims now to know nothing about it would be 'presentation'.

      There are several reasons why such a layer is useful, the main one being that the old farts were not as clever as they think they were. TCP has a lot of problems and you often end up wanting a protocol layer to insulate your application from them. There are all sorts of hideous things that happen if you don't close out TCP/IP sessions correctly for instance which the Berkley sockets library won't fix for you.

      The other reason people want a presentation layer is that TCP has pretty wierd performance characteristics. In the early days of the Internet you could litterally bring the system down by sending packets in faster than people could consume them. The solution to this was 'slow start' which essentially means that sessions start out at a slow speed and only ramp up the rate of packet submission as they get feedback indicating the recipient can handle it. All good stuff eh? Well yes but the parameters were set in the days of 300 baud modems and are completely inappropriate for broadband.

      What this means is that once you set up a connection you really want to keep it going. That can be problematic however since simply serializing all your requests into one channel can get real ugly when you are interleaving 32 byte instant messages onto realtime video streams.

      The way to fix a lot of these problems is to fix the TCP protocol. There is no technical reason why slow start could not be designed with memory so when you connect to CNN.com it remembers the speed it used last time. That would break the current RFC for the Internet standard but it is what a lot of vendors are actually doing on the quiet.

      What the IESG and IAB do not get is that a lot of the Internet are regarding them as damage and routing arround them. The IETF is collectively working in interupt driven mode, people propose working groups, they do stuff in response. What I do not see is a group of people stepping back and examining the internet architecture as a whole and working out ways to improve it. We just have a bunch of incremental fixes.

      In any IETF discussion the status quo is always accorded a ridiculously high status, even when it is clearly broken.

      You miss the point about SGML encoding vs SGML data model. The SGML encoding of XML is simply an artifact. If you want to apply XML at that layer in the stack you should write a better encoding.

      --
      Looking for an Information Security student project suggestion?
      Try http://dotcrimeManifesto.com/
    11. Re:Not so impressed by J.+Random+Software · · Score: 1

      An ad hoc parser isn't going to correctly handle character entity references, comments, marked sections, processing instructions, and non-UTF-8 encodings, and all of these are permitted for application/beep+xml (everything but DOCTYPE declarations, which makes the DTD they wrote pretty pointless).

    12. Re:Not so impressed by Anonymous Coward · · Score: 0
      First IPSEC was deliberately designed to make it impossible to use through NAT devices.

      I'm really sick of seeing this mis-truth propogated by people who should know better. IPSEC esp will work just fine through a 1:1 NAT. NAT-PT is not the only way to NAT.

    13. Re:Not so impressed by Snorbert+Xangox · · Score: 2, Interesting
      Ah so you are claiming that the Marshall Rose who wrote The Open Book : A Practical Perspective on Osi [amazon.com] is a different Marshall T. Rose. No sorry, Marshall you made a major technical contribution to OSI, or at least he claimed to have done so on the jacket cover of the copy I read. You did not 'kill it' at the IETF, OSI was killed in the marketplace long before 1993. The speech had the impact it did precisely because you knew the OSI stack.

      Sheesh, how on earth is knowing about OSI before publicly trashing it a crime? For people trying to make sense of the burgeoning pile of manure that was the OSI movement in 1990, MTR's books were a way to at least work out WTF OSI was on about, because it wasn't a picnic extracting this information from either: (1) the standards (unless you had a whole lotta time and masochism on your hands); or (2) the vendors (who just said "this is what you have to buy to be futureproof, shut up and buy it".)

      MTR may have attempted to inject some sanity into the OSI standards process at some stage, but given that many governments were STILL treating OSI as manifest destiny in the early 90's ("it's definitely the future, we just don't know when it's turning up in a usable form"), this could be seen as an effort make the best of a bad lot on behalf of the people who were apparently going to get it inflicted on them, failure in the marketplace or not, rather than wholehearted support for everything OSI stood for. Jump in my time machine and take a job as an IT Officer in the Australian Public Service in the early 90's, then you might see this point a bit clearer. Back then, we honestly thought we were condemned to live with this crap forever, courtesy of the Government OSI Profile (remember that?). MTR's books were very very useful for arguing with our management in an informed manner about why OSI would not actually solve our problems. And it was pretty obvious if you actually read his books that MTR was not a big cheerleader for OSI.

      --
      -Snorbert, somewhere in the antipodes
    14. Re:Not so impressed by Anonymous Coward · · Score: 0

      If you can afford to dedicate a public address to every host, why would you want to use NAT?

    15. Re:Not so impressed by Art+Tatum · · Score: 1
      They have plenty of contempt for technology have nots while curiously tollerating computing environments from the stone age.

      One can only presume that you are referring to UNIX. Well, it is old, yes. But the architecture and philosophies of UNIX are solid and useful. And it's well tested. As an aside, did you know that torpedo technology from WWII is far more reliable than our current nuclear arsenal? Why? Lot's of real world testing.

      Send HTML mail and they will have appoplexy. (And if you think HTML is a bad idea I presume you read Slashdot in the no-graphics, plaintext mode).

      Sometimes I do. It's called Lynx. But that's irrelevant. A web browser is used to view HTML. A mail client is used to view mail. There are far too many people out there who feel the need to format a simple message all to hell and back simply because they can. And then there are the folks who don't even realize that all their messages are going out in HTML. All these messages start to add up in terms of bandwidth and storage. It's simply overkill.

    16. Re:Not so impressed by Anonymous Coward · · Score: 0
      I am not one of the Editors, I am listed as a principal contributor before the group members.

      In other words, you lied when you claimed to be one of the authors.

  47. MODERATORS ON CRACK by Anonymous Coward · · Score: -1, Troll
  48. slashdotted, and then some by mangu · · Score: 2
    Internal Server Error

    The server encountered an internal error or misconfiguration and was unable to complete your request.

    Please contact the server administrator, webmaster@dbc.mtview.ca.us and inform them of the time the error occurred, and anything you might have done that may have caused the error.

    More information about this error may be available in the server error log.

    Apache/1.3.20 Server at beepcore.dbc.mtview.ca.us Port 80

    Way to go, BEEP! I won't fuck with you anymore, because I'm no pedophile, OK?

  49. You're a dumbass by Anonymous Coward · · Score: 0

    If you spend all your time writing your own complex language parsers for XML or HTTP, you've MISSED THE POINT COMPLETELY.

  50. Who wasn't a programmer? by ebyrob · · Score: 2

    No by definition the aplication layer protocol provides the application with access to the network stack through an API.

    Um... You remember what API stands for right? That'd be "Advanced Programming Interface" or some variation. If you'd ever had to code using one of these, particularly a "new" one, you'd realize that "Interface" is a very relative term.

    So, is it easier to just use sockets as your application's API to the network? In many cases yes... Interestingly enough, TCP already provides multiple streams of cummincation, and port numbers are supposed to tell you how to behave when listening or connecting. Adding another layer on top of this to do essentailly the same thing seems redundant. The only benefit I can see to this might be effects on performance(for wireless) or the ability to "sneak through" firewalls. But at what cost complexity and efficiency?

    That said, if anyone ever comes up with a useful presentation layer, I'd be happy to give it a whirl. (XML has been kind of fun that way...)

    1. Re:Who wasn't a programmer? by Anonymous Coward · · Score: 1, Informative

      NO!NO!NO! Application Programming Interface!

    2. Re:Who wasn't a programmer? by ebyrob · · Score: 2

      Application

      I believe that falls under *some variation*.

      Either way, interface is still a very relative term...

    3. Re:Who wasn't a programmer? by Anonymous Coward · · Score: 0

      You were wrong, you got called on it and you put that "some variation" clause in there so you could cover your ass if someone called you on your mistake.

      You are pathetic little sniveling whiner and you deserve a good kick in your fucking balls.

  51. new registries by Jae · · Score: 1

    i believe part of the EPP draft deals w/ using BEEP as a communication layer.

    the .biz registry wanted to do an initial roll out of this when the tld went live, but there was a lot of push back from the registrars b/c of timeframes and "newness".

    --
    -Jae
    1. Re:new registries by SAH · · Score: 1

      Here's a link to the draft describing EPP transport using BEEP:

      http://www.ietf.org/internet-drafts/draft-ietf-p ro vreg-epp-beep-02.txt

      As one of the folks involved in the EPP/BEEP discussions, I can confirm that most of the concerns had to do not only with a lack of experience with current BEEP implementations, but a wealth of experience with streaming data over TCP. Implementers just felt more comfortable working with tried and true technology. It will be nice, though, if we get a chance to implement this draft and see if any of the early performance and complexity concerns were justified.

  52. AOLTW by Anonymous Coward · · Score: 0

    How long before AOLTW either buys the RoadRunner library or sues the makers into oblivion?

  53. Yes by mindstrm · · Score: 2

    I know that. That was the point.

    The point was, we don't NEED a single protocol, we already have one, it's called IP.

    1. Re:Yes by Anonymous Coward · · Score: 0

      IP is not application layer.

  54. /. effect -- note from beepcore.org by Sweetums · · Score: 1
    I know for a fact that the server is not very brawny. Here's a note from beepcore.org.
    WE'VE BEEN SLASHDOTTED... sorry! Because the beepcore.org server is built using apache/tomcat, but runs on a small server, it can't handle the load of the slashdot hordes. So, you're getting this statically-generated page instead.

    If you really want to get to the dynamic site, click on the logo above.

    --
    ------------------------
    Jack not name, jack job!
    1. Re:/. effect -- note from beepcore.org by Sweetums · · Score: 1

      Sorry, might as well post the link ... http://www.beepcore.org

      --
      ------------------------
      Jack not name, jack job!
  55. What about Net::Beep for Perl? by RockyMountain · · Score: 1

    Having read the spec, and taken a peek at the O'Reilly book, I would definitely want to use BEEP, assuming a I was writing an application that called for a new protocol. (Which I'm not, at present).

    Unfortunately, for me there's still one obstacle: The lack of a perl Net::Beep module.

    Yup, I'm that lazy! Until someone else(!) makes it easy in my favorite language, BEEP might as well not exist. :-)

    Anybody know of such a project in the works? My search of CPAN, Google, etc., about 6 months ago, turned up nothing.

    1. Re:What about Net::Beep for Perl? by Anonymous Coward · · Score: 0

      This is actually planned (or at least intended) for RoadRunner, along with bindings for Java and other languages as well. The first language binding attempted is for Python, simply because it's the most familiar to us.

      If you feel so inclined, check it out from the CVS and take a look at it. Perl bindings shouldn't be very different from the Python ones, but I am admittedly only guessing/assuming.

      Contributors with more perl and c-to-perl binding experience are very welcome. /Daniel - Of the RoadRunner team

  56. GOTOs Represent! by Anonymous Coward · · Score: 1, Insightful

    I despise people who wont admit the usefulness of GOTOs.

    I once wrote a 2000+ line RPG without a single loop or set of code blocks in C++. (ie: I used GOTOs instead of brackets)

    It ran beautifully, and still does. Not a single error in the whole thing.

    I've seen others write a similar game using loops and code blocks, and watch as it hit infinite loops, memory errors, and whole hosts of other problems easily solved with a GOTO.

    Say what you will about GOTOs being outdated, but when you compile a C/C++ program, all your if/else/loops all compile into GOTOs.

    If they were useless, they why are they still included in all chips? (and prolly will be forever)

    1. Re:GOTOs Represent! by Anonymous Coward · · Score: 0

      I think you'll find you wrote it in C

    2. Re:GOTOs Represent! by Hellkitten · · Score: 1

      You should be modded +1 flamebait

      So if you want to make a modification to that problem now can you do it without breaking it?

      Goto has it's uses, but in most cases the risk of introducing bugs and making maintainance har far outweighs them.

      Gotos can be powerful, but power is something you have to be careful with. Just because it can be done with a goto doesn't mean it should. And not using loops (because of infinite loop problems) seems far more extreme than the "goto is evil" crowd.

      --
      - We are the slashdot. Resistance is futile. Prepare to be moderated -
    3. Re:GOTOs Represent! by Anonymous Coward · · Score: 0

      Carefully selected use of GOTO can get your code readable easier and with less frigging about.
      The goal of structured programming is understandable code. Any dogma that gets in the way *can* be ignored.

      Forget where I read it, but a quote for you

      "Rules are for the guidance of wise men, and the obedience of fools"

    4. Re:GOTOs Represent! by Hellkitten · · Score: 1

      I agree, but writing 2k+ lines of code with nothing but gotos seems as over the top as writing 50 lines of code where 1 goto would be simpler

      There is a middle way you know

      "Rules are for the guidance of wise men, and the obedience of fools"

      Quoth myself: "He who breaks a rule simply because it is a rule is a bigger fool than he who follows it because it is" You have to know when to break the rules, and all the time is not the correct answer

      --
      - We are the slashdot. Resistance is futile. Prepare to be moderated -
  57. BEEP: not appropriate for iCalendar by tlambert · · Score: 2

    The ICAP protocol is based on the IMAP4 protocol. As such, it has the assumption of a client/server relationship. It also has state assumptions that are not necessarily valid over time, and BEEP appears to not support the concept of nested transactions (the IMAP4 and ICAP protocols are biased toward set encapsulation -- that's why there are all the irritating nested parenthesis -- which lends a strong bias toward stack based interpretation of requests: transactions).

    Since BEEP is intended as a peer-to-peer connection oriented protocol, it's not ever going to really be practical as an ICAP transport.

    The main issue that a server deals with is a shared resource that belongs to the system, rather than participates as a peer. This becomes an issue when you want to schedule use of a confernece room or interview office, where these resources, unlike human beings, don't have a machine which participates in the process as a peer. It's not possible to totally distribute such a system, since the peers are not the only mutually contended resources (if "Bob" drops out, then you can have a request outstanding, but not accepted; no matter who else attends your meeting, though, the conference room *must* "attend").

    As far as a peer-to-peer workgroup calendaring service, it *may* be possible to use MIME encapsulated calendar update notifications, similar to the way Microsoft Outlook can be a transport for Microsoft Schedule information (the message type involved lack standardization).

    However, such an approach would have the drawback of "netsplits" (in the IRC sense) redulting in shared resources ending up with conflicting scheduling (just like "operator" status in an IRC network following recovery from a "netsplit").

    In general, calendaring is a much more complicated problem than people tend to give it credit for being.

    Right now, the best protocol bet for Calendaring is LDAPv3 with the "persistant search" or a similar notification mechanism (e.g. LTAP), except not as a proxy, and mandatorily integrated into the LDAP server itself (due to replication requirements).

    One place BEEP *might* be useful is data replication between peered servers. The primary reason it could be useful here is that the entity relationship is *peer*, not *client/server*.

    -- Terry

    1. Re:BEEP: not appropriate for iCalendar by zoydoid · · Score: 1

      Sorry, tezza, but you're spouting absolute crap. The ICAP draft specifies that it is layered over BEEP (see http://www.imc.org/draft-ietf-calsch-cap ) and where you got that crap about IMAP i don't know.

    2. Re:BEEP: not appropriate for iCalendar by zoydoid · · Score: 1

      just realized you probably confused (i)CAP with ACAP which is IMAP related. (i)CAP as the original poster mentioned is layered over BEEP.

    3. Re:BEEP: not appropriate for iCalendar by tlambert · · Score: 2

      This appears to be a fairly recent developement.

      The examples at:

      http://www.imc.org/ietf-calendar/cap-examples/

      Definitely contain the IMAP4 command tags, and uses the "." as a list output terminator. The draft specification which was located at:

      http://www.imc.org/ids.html#calsch

      8 months ago specifically references differences between IMAP4 and ICAP serversm and how a server can be both. I still have a copy of it in the directory with my Cyrus patches on my other machine.

      I intentionally went out of my way to implement an ICAP server in the context the the Cyrus IMAP4 server, thinking that there would be clients, other than the PHP4 client I implemented. I was going to release the Cyrus patches at some point, once I had cleaned them up.

      I guess it's a good idea to never implement anything until the standards have settled down, to keep them from changing out from under you. 8-(. Unfortunately, vendors love to change standards out from under you, so that their implementation complies and yours doesn't, and so that you can't beat them to market with a product (beats competing on quality of implementation).

      IMO, the correct way to implement this is via an LTAP-type protocol. My personal bias is for adding the transaction and notification features to LDAP, since the Lucent patent is based on the use of a proxy.

      I realize that the draft specifically references "BEEP" (not legal in RFC-land, that...;^)), but I still maintain that it requires a client/server relationship to correctly implement calendaring.

      This basically means that there are two options: the first is that the BEEP protocol will be used in a client/server mode, rather than the peer-to-peer mode that the BEEP designers intended, OR people are simply going to be unable to implement usable calendaring applications with the newer iCAL, as specified by the new draft.

      I still maintain that a peer-to-peer calendaring application is not viable, since it fails to have the minimal features present in, say, OnTrack's "Meeting Maker" (i.e. the ability to schedule a conference room, since peer-to-peer networks are designed -- and intended -- to support paroxial participation in the network).

      Or in plain English: there is a lot of hype about peer-to-peer, and not a lot of delivery of the goods.

      FWIW: I worked at Artisoft when the Artisoft LANtastic product was *the* preeminent peer-to-peer networking software out there, and was one of just 4 engineers involved in the UNIX (initially, Linux) port, so I'm not talking from ignorance here.

      -- Terry

    4. Re:BEEP: not appropriate for iCalendar by Wolfier · · Score: 2

      ICAP was the precursor of CAP, and is not part of the iCalendar-related specification anymore.

      The newest incarnation of the iCalendar server protocol CAP is built on top of BEEP, and has an SQL-like query language that far exceeds the capabilities of ICAP.

  58. Simple answer(s) - Lighthearted but true. by Anonymous Coward · · Score: 0


    (1) Firewalls. Port 80 wins. Resistance is futile.
    (2) Semantics. HTTP's all you need.
    (3) Economics. Metcalfe's Law. 1 protocol=max val.

    HTTP. There can be only one.

    Get your REST gear at CafePress...

  59. Intel has released P2P Toolkit with BEEP Support by Anonymous Coward · · Score: 0

    Intel has released a P2P toolkit for the .NET Framework with a BEEP implementation for those interested.

    It's open source and can be downloaded from:
    http://www.gotdotnet.com/team/p2p/rtmp2p/de fault.a spx

    Note BEEP is only a small part of this download - but have a look at the source code and you will see a bunch of BEEP code.

  60. Nullsoft Beep by xdeadbeef · · Score: 1

    I guess we better change the name of our beep: http://www.nullsoft.com/free/nbeep/

    to avoid confusion...?

  61. The BEEP community is strong and gettng stronger by jrimmer · · Score: 3, Informative

    BEEP's an impressive protocol framework with even more impressive implementations.

    I'm using it in a burgeoning open source project because of it's ability to multiplex bidirectional communication channels in a transparent fashion. Other features such as dynamic client/server roles, authentication, and channel encryption are just icing on the cake. The less I have to muck around with protocol state details the better!

    When I first started looking at BEEP I was impressed by the spec but I was suspicious as to the quality and breadth of implementations. After looking through the high level Java abstractions and more specifically BeepCore-Java I was able to throw together a workable protocol that's proven to be extensible and quite robust in just a few days.

    The BEEP community is alive and well!

    There are a number of opensource BEEP implementations:
    • BEEPCore-Java - Java implementation with a BSD-like license
    • BEEPCore-C - C/C++ implementation with a BSD-like license
    • PermaBEEP - C implementation with a SleepCat-like license
    • BEEP4j with an Apache-like license
    • PyBeep for Python with an unknown, but OSI approved, license
    • RoadRunner - C and Python implementation with an OSI approved license.
    • Beepcore-Ruby - Ruby implementation (though just beginning) with a BSD-like license

    There's an excellent IRC channel at OpenProjects with the kitschy name #beepnik.

    There's the obligatory O'Reilly book, BEEP: The Definitive Guide.

    But the best source for information is the Beepcore.org site which has, among other things, an excellent whitepaper on the justification and design of the BEEP protocol.

  62. Will BEEP Simplify Network Programming? by Anonymous Coward · · Score: 0, Offtopic

    No.

  63. What about the bandwidth cost? by I+Prefer+Dannii · · Score: 2, Insightful

    Good to see that this protocol is as bandwidth efficient as most of the rest of the IETF protocols. Ahem.

  64. My poor eyesight by r_j_prahad · · Score: 2

    When I read the headlines, I thought it said "Will BEER simplify network programming"? I know the answer to that one, and I can prove it over and over that BEER simplifies any kind of programming.
    It's the debugging that demands sobriety....

  65. I think you are missing important BEEP feature by apankrat · · Score: 1

    The last time I looked at it, BEEP had nice feature of automatically relating packets being sent and forth via some sort of packet ID numbers. This automatically allowed for sessions and, what's more important, it supported asynchronious request-reply paradigm. This is very common thing one need to implement when dealing w/ more-or-less complex cli-srv architecture. Server might not only be queueing client's requests, but may also comlpete them out of the order (think of RPC, for example). BEEP provides built-in support for this behavioural pattern.

    Not being a huge fan of XML, I still find BEEP initiative pretty interesting, but somewhat too generic and artificial when it comes to adopting it to real-life applications.

    --
    3.243F6A8885A308D313
    1. Re:I think you are missing important BEEP feature by ebyrob · · Score: 2

      XML is to the presentation layer as TCP is to the session layer. It strikes me that XML isn't the end all be all (just as TCP isn't) of its layer. However, it is a very compelling implementation against which all other implemenations can be measured. I expect great strides in the presentation layer in the next few years primarily because of XML.

      This automatically allowed for sessions

      Which is what I thought TCP was all about... though there is overhead of course.

      it supported asynchronious request-reply paradigm ... (think of RPC, for example)

      I didn't manage to get through the whole specification, but this did seem to be one of the useful things in there... Of course, how useful is this really? It might be somewhat nice to have a tool I can use in my application to create an RPC mechanisms or the like, but what I'd much rather have is an RPC mechanim already built for me. (Like RMI in Java for example)

      Don't get me wrong, BEEP will probably be useful in some applications, but I don't expect it to become a "canonical" implementation like XML or TCP.

      Basically, I see a need for some level of tools to help in creating generalized TCP application protocols. In fact every TCP programmer I've met that does this for any length of time has created (or modified) their own toolset for this end. The problem with BEEP seems to be that it is a little too heavy and complex for many simpler applications. Also, the application protocol programmer, usually spends a lot more time writing code to communicate with legacy systems then coding new application protocols. I don't see a lot of functionality in BEEP for dealing with legacy issues.

  66. Attn mods: PARENT is worth a 5, k? by Anonymous Coward · · Score: 0

    Moderators: This is an example of a post that is worthy of +5 Informative. Political or religious opinions that you happen to agree with are not. They might be worth a 4, but IMHO are almost never worth a 5.

    Nicely done.

  67. Heh .. setsockopt(TCP_NODELAY) by apankrat · · Score: 1
    TCP, for example, has many properties that make it undesireable for networked games.

    I hear ya, but in practice it's the Nagle algorithm that renders TCP unusable for 80% of real-time gaming applications. There is a fine balance between free TCP 'sessionness' and the overhead of re-implementing and using sessions with custom over-UDP (or over-IP) protocol.

    --
    3.243F6A8885A308D313
  68. JXTA by vercingetorige · · Score: 1

    JXTA, the P2P open source framework sponsored by Sun, is based on Beep. JXTA community is getting bigger and there are some very interesting projects going on (all programmed with Java, but Perl and C bindings for JXTA are in development).

    1. Re:JXTA by Anonymous Coward · · Score: 0

      Sorry but only one transport implementation is BEEP and it uses an obsolete version. So to say that JXTA is "based-on" BEEP is extreme exaggeration.

  69. Annoyed by KidSock · · Score: 5, Interesting

    Well thanks. Now I'm ticked. The ./ post made this sound very interesting taking about framing and low level down to the metal "network programming". So I followed the links. I get 5 minutes into the spec and what do I find? It's another telnet based protocol that is largely XML. I'm going to puke if I see another stupid XML networking protocol. I can't believe I'm the only one who sees how stupid it is to format all network traffic in a verbose text format like XML. Here's 448 byte "hello" example.


    C: MSG 0 1 . 52 158
    C: Content-Type: application/beep+xml
    C:
    C: <start number='1'>
    C: <profile uri='http://iana.org/beep/TLS'>
    C: <![CDATA[<ready />]]>
    C: </profile>
    C: </start>
    C: END
    S: RPY 0 1 . 110 121
    S: Content-Type: application/beep+xml
    S:
    S: <profile uri='http://iana.org/beep/TLS'>
    S: <![CDATA[<proceed />]]>
    S: </profile>
    S: END

    1. Re:Annoyed by anshil · · Score: 4, Insightful

      I'm completly sharing your visions.

      XML maybe very cool and ideal to store data, for config files and all that. How cool would be a completly XML based /etc directory?

      However I don't see any real benefits for protocols.

      In example what does XML-RPC do any good? Is conventional RPC suddendly uncool? What can XML-RPC do, what normal RPC can't? Except that it uses 5 times more bandwith.

      It's just sad, if you type RPC in google, the first five links you get is all about XML-RPC. So marketing words can boost a whole technology? Nobody seems to remember what RPC itself is, and a lot of developers mismatch it today if you talk with them about RPC, you say hey why don't we use RPC? Instead of stuffing sockets ourself, and they start to talk about XML, RPC does not need XML at all.

      --

      --
      Karma 50, and all I got was this lousy T-Shirt.
    2. Re:Annoyed by Twylite · · Score: 2
      In example what does XML-RPC do any good? Is conventional RPC suddendly uncool? What can XML-RPC do, what normal RPC can't?

      Drive the market for massively high bandwidth, Gigabit switches, Pentium 4s and horribly expensive application level firewalls...?

      --
      i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
    3. Re:Annoyed by mattr · · Score: 2
      Also annoyed and hating XML. Okay, XPATH searching is admittedly extremely cool. But how many apps really need this and use it? More marketspeak, less speed, yecch.

      The main two things I've seen about XML are:
      1. It makes medium-speed platforms like tomcat very, very slow performers.
      2. It is hard to explain to users, who need to understand arcane concepts in order to exploit it.
      3. The simple uses of it are indistinguishable from what can be done with config files.
      4. When it really starts getting used you start seeing network competition effects like browser wars, differences in embedded languages, and rendering artificats.
      5. It is relatively easy to bullshit vaporware, bloatware, and rapacious software houses if it has an XML in it (or an "e-commerce", a "secure key", or a "content management").
      6. That said, it can be a great tool. But I don't want to eat, sleep, and breathe the stuff!

    4. Re:Annoyed by BenjyD · · Score: 1

      Yeah, my company switched from text based to XML based data files recently, and the average data file size went from a few hundred K to several megabytes. There's progress for you.

    5. Re:Annoyed by ceswiedler · · Score: 3, Insightful

      The best use of XML is when you DON'T have control over one of the ends. B2B applications can benefit greatly from DTDs/schemas and aren't going to care about bandwidth issues as much.

      The "classic" example for an XML based protocol is a server which provides weather information to anonymous clients over the public net. Do you want to write your own protocol and try to explain it to everyone who wants your information? No, just package it in XML, provide a schema, and it's easy for clients to fetch.

      Situations where you DO have control over both ends don't benefit from XML very much, especially when performance is important (and when isn't it?).

      There is a place for technologies which consume extra CPU, memory, and bandwidth but provide something else: for example, reduced programmer development time (for some applications). Java is a good example. The benefits of XML are more limited, but they do exist.

    6. Re:Annoyed by gorilla · · Score: 2
      In example what does XML-RPC do any good? Is conventional RPC suddendly uncool? What can XML-RPC do, what normal RPC can't? Except that it uses 5 times more bandwith.

      How about that you CAN telnet to the relevent port and type the right data. Text based protocols like SMTP, POP, HTTP, etc are very easy to write clients for, and to debug, because you can simply write & read text. Binary based protocols like DNS require special libraries or more complex programming.

    7. Re:Annoyed by Anonymous Coward · · Score: 0

      > Do you want to write your own protocol and try
      > to explain it to everyone who wants your
      > information? No, just package it in XML,
      > provide a schema, and it's easy for clients to
      > fetch.

      In essense you still have to design your own protocol and you stil have to explain it to everyone. The only things XML brings to the table are: (1) it makes explanation easier, (2) it makes client implementation easier too.

    8. Re:Annoyed by jrimmer · · Score: 1

      BEEP was never meant to be all things to all people. If your application is solely concerned with sending small "hello"-type messages back and forth then there are much lighter-weight protocols to use. But if your application requires the transfer of moderately sized data packets then the additional weight of an XML envelope is trivial.

      Obviously the hello example is meant to illustrate the protocol and not necessarily it's best usage.

  70. BEEP in use... by tep-sdsc · · Score: 1

    BEEP is the core of the syslog over TCP (syslog-reliable, AKA RFC 3195). Since Rose was one of the authors, no surprise there.

    We've been writing a new syslog daemon that supports RFC 3195 (among others) and we're just getting to the BEEP stuff.

    Its not pretty, but the flexibility looks interesting. Ask us about suck-factor in about a month, we should have some opinions by then :-)

  71. Easy... by goodEvans · · Score: 1
    Hah! This isn't new! I've been doing beep programming since the mid-80s. Look:

    10 print chr$(7)
    20 goto 10

    See? Easy.
  72. So what's next by JimPooley · · Score: 2

    We've already got PING, now we've got BEEP. So when do we get SHOOT and EXPLODE?

    If anyone knows what I'm talking about, I'll be pleasantly surprised!!!

    --

    "Information wants to be paid"
    1. Re:So what's next by Anonymous Coward · · Score: 0

      Sure, you're talking about the Tangerine Oric-1, another 6502-based computer from the UK (just like the BBC Micro).

  73. Why isn't anyone adopting this protocol ... by MRNk · · Score: 1

    People who propose the One application protocol to beat them all often ignore existing One protocols. People love reinventing the wheel.

  74. [Re:Easy...] No, no, no, no... by Anonymous Coward · · Score: 0

    10 FOR g=1 TO 50
    20 BEEP 0.02,g
    30 NEXT g

  75. Re:The BEEP community is strong and gettng stronge by binkley · · Score: 3, Interesting

    I wrote a BEEP implementation for Perl when I was working at Enron Broadband Services, but my group was never able to get the lawyers to let give it GPL licensing and release it publically.

    At the time, it seemed like our choices for letting partners have some say in network routing through our backbone were SOAP or BEEP, and we favored BEEP because of partner pressure from Sun against all things favored by Microsoft (go figure). Eventually, we used simple XML messages rather than an entire application layer.

    Early on, BEEP wasn't a difficult protocol to implement; however as time passed, it grew more and more complex, until it maintaining BEEP in a closed-source environment outweighed any benefits. At that point we switched to simple XML messages.

    BEEP isn't a bad protocol at all. It is a little over-designed: as a fan of eXtreme Programming, I'd have preferred that smaller versions of the protocol get wider use and more feedback before being expanded.

    --
    --binkley
  76. You didn't look hard enough by Billy+Bo+Bob · · Score: 1

    Reliable-syslog, from the syslog WG in the IETF, is based on BEEP. It is fairly clever.

    In reviewing reliable-syslog, I had a good look at BEEP. It is clever and neat, but XML processing _can_ be a bit heavy for many applications and there can be quite a few options in BEEP. That being said, it is still feasible. It takes quite a long while for a new 'protocol' to gain acceptence; often years.

  77. one woodpecker by throwaway18 · · Score: 1

    If there is a bug in a commonly used part of beep such as the
    framing code it could cause all protocols created with it to
    be vulnerable.

    TCP/IP and protocols running over it have had plenty of
    problems in the past. From machine crashing exploits like
    winnuke, boink, and teardrop to the reccent apache
    vulnerability. Problems have take a long time to be found
    even in widly used protocols.

    I expect that people who use a medium level language instead of
    creating their own protocol handling routines are unlikly to
    spend time making serious effort to audit the compiler for
    security problems. The BEEP project page talks about learning
    previous protocol work but don't specificaly mention security
    that I noticed.

    1. Re:one woodpecker by ethereal · · Score: 1

      Sure, but on the other hand, if a problem is found, everybody just upgrades their BEEPlib or BEEP stack and moves on. Versus the current situation, where we have to fix essentially the same type of buffer overflow in each application that implements HTTP, or FTP, or SMTP, or DNS, etc.

      The BEEP writeup did describe some sort of optional "pluggable" security system, so you could enable security features if you wanted them, or leave them off for performance reasons. I like the idea of a protocol framework where you can then enable or disable the bells and whistles of the protocol at will. Although it remains to be seen whether that level of control can really triumph over the XML-ness of BEEP :)

      --

      Your right to not believe: Americans United for Separation of Church and

  78. t as in asshole by nobody/incognito · · Score: 1

    <nobody> beep?
    <nobody> oh this is marshall rose's latest brainchild
    *** Action: nobody prepares to be outraged
    <nobody> marshall rose is an ASSHOLE
    <nobody> i remember the first (and last) time i met him. such an arrogant prick.
    <nobody> so smug and self-congratulatory because he invented MIME
    <nobody> GUESS WHAT DR. MARSHALL T. AS IN ASSHOLE ROSE? MIME SUCKS!

    nobody

    --
    parturiunt montes, nascetur ridiculus mus
  79. Yes. by mindstrm · · Score: 2

    I see that you are talking about the Web Browser as an application, as looking at a series of HTML pages.

    I suppose it all depends on your point of view. When I transfer a file via HTTP, it's just as stateless as, say, FTP.

    Auto-reconnect logic, as you call it, would work just as well with HTTP as it does with FTP. It's a function of the client, not the protocol.

    1. Re:Yes. by psamuels · · Score: 1
      I suppose it all depends on your point of view. When I transfer a file via HTTP, it's just as stateless as, say, FTP.

      Yeah, I guess it's all about point of view. If the only thing you do with FTP is to transfer a single file, then close the connection - then sure, it's like HTTP 1.0.

      However, FTP was designed as a much more interactive protocol - you open the connection, authenticate, browse through the directory tree, get directory listings, upload files, download files, maybe use 'chmod' (an unofficial but commonly supported extension), etc., and finally disconnect. That is what you can't do with HTTP - with HTTP you connect, optionally authenticate, upload or download a single file (or get a single directory listing, or post a single transaction), and automatically disconnect.

      Sure, you can emulate one with the other - web browsers usually support FTP and make it look stateless, and the client and server can each cache a connection state handle (aka cookie) to make HTTP seem as though it persists across requests. With HTTP 1.1 you can even reuse a connection for multiple transactions, to mitigate the setup cost of TCP. But under the hood, the protocols are simply designed differently.

      --
      "How can you claim that you are anti-crack, while still writing a window manager?" — Metacity README
  80. MinXML by Anonymous Coward · · Score: 0

    When XML is too much, but you still want named nested tags (easy to extend your spec) and compatibility, one option is MinXML. It's XML without attributes, cdata, comments, dtd, mixed content, etc. Just nested tags. Java and javascript parsers available. I'm messing with one in Python, not quite done yet but mostly there in two pages of code. I'm going to use it for an app where I need to apply digital signatures to something XMLish, and minXML with whitespace removed is way easier than W3C XML Signatures (40 pages for the signatures spec, plus another 40 pages for the "canonical xml" spec, plus xpath for partial signatures, plus scripting for fscks sake.)

    1. Re:MinXML by Twylite · · Score: 2

      Thanks, this is very interesting! I have a page where I've been messing around with some thoughts about XML and how it should have been - minXML gives me some more material to think about.

      Personally I prefer having the structure represented by tags, and data only in attributes. It makes it a little easier to represent certain categories of information (IMHO).

      --
      i-name =twylite [http://public.xdi.org/=twylite], see idcommons.net
  81. reinventing NetBIOS, SMB and DCE/RPC by Anonymous Coward · · Score: 0

    BEEP is basically reinventing NetBIOS over TCP (rfc1001/2.txt), SMB (draft rfc from ms by paul leach) and/or dce/rpc (osf documented standard on www.opengroup.org).

    BEEP doesn't have ping / echo semantics, so a client cannot establish that a server is still alive, and cannot tell the server that _it_ is still alive.

    and no, maintaining the tcp connection open is _not_ a good way to say "i am still here!".

    BEEP rfcs don't mention how network errors are
    supposed to be handled.

    BEEP doesn't describe how, if or whether the server must, or can, keep any state information such that a network error may be recovered from easily.

    client / server apps are tricky to write well,
    and _need_ some assistance from the transport.

  82. Re:Annoyed ... but somewhat missing the point. by Sweetums · · Score: 1

    Why is it that people assume that everything BEEP must be XML, it's not true. Channel 0 (the control channel) is XML, this has NOTHING to do with what an application profile's data looks like.

    Profile data can be binary (and is by default) or specified by a MIME header in the frame. Other than that, it's handed off to the profile to handle, BEEP does not look inside the encapsulated data other than to pass it to the profile handler.

    XML is used in the control channel, that is the limit of BEEP's imposition of XML on the world.

    Sweetums

    --
    ------------------------
    Jack not name, jack job!
  83. Re:Annoyed ... but somewhat missing the point. by J.+Random+Software · · Score: 1
    Every BEEP-aware system must incorporate a complete XML parser and MIME header tokenizer, and fire them up every time a session or channel opens or closes. Since just about everything in a BEEP frame is variable length and channel numbers are arbitrary, you can't prioritize, scan, or filter any channel without vastly more horsepower than anyone's routers or firewalls have.

    What I really can't figure out is why the first (and only) mapping document is for TCP. BEEP doesn't even buy you anything unless you can retransmit frames out of order.

  84. Amen to this, bro by Anonymous Coward · · Score: 0

    Contrary to popular bullshit, XML is not human readable (as if computers care about that), is not fast/efficient and is not programmatically simple to decode

    Well said.