This is the product line incorporating CRUSH technology.
CRUSH is a technology which represents a product line. The CRUSH product line can be a market alternative for SBC, ALG, UPnP, and other firewall traversal technologies. It can also be a product alternative for TURN, STUN, media relay servers, media conference servers, and address discovery servers.
CRUSH Diagnostic technology: (see Four Bars)
- Is there a network?
- Is UPnP on?
-
What kind of firewall is it? SNMP, Web interface may help us know. What version of the firmware?
-
Is there a network interface? Can the interface reach the Internet?
-
Build a public reflector for ICMP(ping), UDP (try an RTP packet), DUDP? TCP
-
Build a reflector behind a symmetric NAT which runs our CRUSH connection code. test UDP(RTP), DUDP, TCP
-
Is there a software firewall?
(Windows Firewall, Zone Alarm, Norton) If so, how do we disable it?
Use SNMP and other technologies to probe client machine for useful information.
- Also, we should ultimately build a knowledge warehouse of commercial and consumer firewall/NAT's (including firmware revisions) and know how they work, what they support, how to best configure them. Once we have this, we could then build scripts which will help the user configure their Internet Gateway Device (IGD) automatically.
CRUSH Client technology
- External Address Discovery (via DUDP or STUN)
- Utilize CRUSH server
- Shotgun Port Spray
- Handoff
- UPnP
CRUSH media server
- TURN like media relay
- CRUSH shotgun port spray & handoff technology
CRUSH Connection server:
- DUDP secure address server
(or STUN)
- CRUSH media server
(above)
- out of band info passing (now via XMPP!)
for remote user addressing, port spray interval, etc...
Secure CRUSH extensions
-
User database for authentication
-
SSL
-
along with any or all of the above products
CRUSH Call Waiting and legacy client approach, also for TCP or HTTP connections
- In cases where one client is a legacy client, CRUSH may still be able to help. CRUSH can attempt to connect to that client in the background. Once the connection parameters are known, CRUSH can initiate a "new" call to that client, and once they accept this new call (via call waiting or simply droping the old call) they are now peer to peer!
- This can be done with or without installing a CRUSH widget on the other side. This CRUSH widget could be a network interface type, or it could be an application level thing which then tells the user on either side where to call.
- The network adaptor handoff approach can be useful to allow TCP or HTTP handoff transparent to the client. This could be useful for relayed VNC, and other things. Also, this allows us to use HTTP tunneling (which we already have) and handoff to server free mode as soon as we can.
CRUSH Public Server:
- Have it run a STUN server, as well as a DUDP server.
- Have it also publish the external address as a simple web page
- Have it run diagnostics for the client, helping it identify UPnP, Nested NAT, etc... and publish results as a web page
- Also have it available as a web service
CRUSH ICE Implementation with QoS and User Levels:
- Implement things in terms of the ICE heuristic
- Allow users to customize options, especially with regards to business rules
- Add in the ability to choose network path alternatives based on QoS requirements and capabilities
- Have different SLA offerings
Multi-Homed CRUSH server:
- Market alternative for SBC
UPnP
SPI fooling
IDS fooling