Hello.
Long explenation: We are a group of students tasked with creating a system which is able to prioritize messages in a network, our customer has asked us to use WSO2 ESB which is, as you might know, just Apache Synapse. We have one strict demand from the customer and that is that our system must be able to set the DiffServ field in the IP header. The system must be able to accept SOAP messages and forward them to a GlassFish server with the final endpoints. And here is our problem, since Synapse does not directly support DiffServ or TOS we need to implement it, but after much research we are still not quite sure how to do this and that is why this emails is sent. We have some leads on where we could alter, org/apache/http/impl/nio/reactor/DefaultConnectingIOReactor could be extended in order to obtain the DiffServ value from the MessageContext and then alter the Socket connection, but we are not quite sure as we don't have the overview needed. Question: Is there a way we could alter Synapse, Axis 2 and/or HTTPCommons in order for us to support setting different DiffServ values to different clients? Hopefully we could alter something which we could either reach or interact with from a mediator which we have to write a cuple of anyway. Wde asked this question to the Apache Synapse mailing list and got the following reply: """Hi, Would setTrafficClass(int tc) of java Socket API work for you? You can access the connecting Socket by overrideing 'bind' of DefaultNHttpClientConnection (httpcore) in LoggingNHttpClientConnection (synapse) and set tranffic class Also, you can modify 'bind' method of DefaultNHttpClientConnection (httpcore) to set traficclass using provided http parameters of 'bind' method. Note: I do not have a good knowledge abut httpcore. So, I may wrong. Please check with them.""" We have looked into these classes, but can't find anything related to 'bind', or Sockets for that matter, which is why we are asking you guys. Is there any way we could change the traffic class of client connection on a per connection basis? Best regards. Jørgen Nordmoen <[email protected]>, <[email protected]>
