Blocks Extensible Exchange Protocol

17
BLOCKS EXTENSIBLE EXCHANGE PROTOCOL Seminar on BEEP presented by VIPIN RAJ T

description

presented by Vipin Raj, Cusat,Kerala

Transcript of Blocks Extensible Exchange Protocol

Page 1: Blocks Extensible Exchange  Protocol

BLOCKS EXTENSIBLE EXCHANGE PROTOCOL

Seminar on BEEP presented by

VIPIN RAJ T

Page 2: Blocks Extensible Exchange  Protocol

INDEX

INTRODUCTION PROPERTIES BEEP CORE ROLE OF BEEP MESSAGES AND FRAMES FRAME HEADER FRAME PAYLOAD FRAME TRAILER CHANNEL MANAGEMENT SESSION ESTABLISHMENT AND RELEASE PEER TO PEER BEAHAVIOUR USER AUTHENTICATION SECURITY CONCERNS REFERENCES CONCLUSION

Page 3: Blocks Extensible Exchange  Protocol

INTRODUCTION

BEEP - Framing mechanism Permits simultaneous and independent

exchange of message between peersExchanges occur in context of channelTransport security, user authentication, data

Exchange is maintainedProfilesChannel management implicit in BEEP

operation

Page 4: Blocks Extensible Exchange  Protocol

PROPERTIES

BEEP (Blocks Extensible Exchange Protocol) is a framework for creating network application protocols.

BEEP (formerly called BXXP) typically runs on top of TCP

allows the exchange of messages called 'frames'. Unlike HTTP (and similar protocols), either end of the

connection can send a frame at any time, and 'questions' and 'replies' can be interleaved easily.

BEEP also includes facilities for encryption and authentication, and is highly extensible.

Page 5: Blocks Extensible Exchange  Protocol

BEEP CORE

Session is mapped on to an underlying transport service

Peer advertise the profile it supportsChannel usageInitial tuningContinuous tuning

Page 6: Blocks Extensible Exchange  Protocol

ROLE OF BEEP

Beep performs following rolesListening and initiatingClient and ServerExchange stylesMSG-RLYMSG-ERR MSG-ANS

Page 7: Blocks Extensible Exchange  Protocol

MESSAGES AND FRAMES

Message structured according to rules of MIMEMay be sent in single frameNecessary to segment message to multiple

frameFrame consists of basic three parts HeaderPayloadTrailer

Page 8: Blocks Extensible Exchange  Protocol

HEADER

Frame header represented by ASCII character and terminated by CRLF pair

Consist of three character keyword Contain zero or more parametersSegmented frames cannot interleave,

“ANS” message can interleave

Page 9: Blocks Extensible Exchange  Protocol

FRAME PAYLOAD

Consists of zero or more octetsHas sequence number associated with itFirst payload is lowest numberedSequence no space is very large

Page 10: Blocks Extensible Exchange  Protocol

FRAME TRAILER

Consist of “END” messageCRLF pair follows it

Page 11: Blocks Extensible Exchange  Protocol

CHANNEL MANAGEMENT

Session starts with a channel no zeroAdvertising and binding of profilesBEEP peer supports 257 concurrent

channel

Page 12: Blocks Extensible Exchange  Protocol

SESSION ESTABLISHMENT AND RELEASE

Peer sends a positive reply with message zero on channel zero

If unavailable sends negative replyBeep session ends with “CLOSE” message With zero valued number Beep peer accepts it with “OK” message

Page 13: Blocks Extensible Exchange  Protocol

PEER TO PEER BEHAVIOUR

Peer must prepare to receive all messages

Error message is sent when unexpected MSG messages are sent

Message no are unidirectionally sent

Page 14: Blocks Extensible Exchange  Protocol

USER AUTHENTICATION

Achieved using initial tuning profileAuthenticated identity updated after

succesful authenticationIntervening on authentication not allowed

Page 15: Blocks Extensible Exchange  Protocol

SECURITY CONCERNS

The BEEP framing mechanism, per se, provides no protection against attack

Chances for man in the middle attack

Page 16: Blocks Extensible Exchange  Protocol

CONCLUSION

•It is easier to make custom application protocol

It provides good securityInherently peer but can be used as client

–server network.

Page 17: Blocks Extensible Exchange  Protocol

REFERENCES

Freed, N. and N. Bornstein, "Multipurpose Internet Mail Extensions (MIME) Part One: Format of Internet

Message Bodies", RFC 2045, November 1996.

Rose, M., "The Blocks Extensible Exchange Protocol Core", RFC 3080, March 2001.