spi is short for stateful packet inspection and is a technique used in higher-end firewalls. it analyzes packets based on their relation to sessions, or previously sent packets. for example, if a user sends a message to someone on im, and receives a reply, the spi firewall will look at the reply to see if it was requested. if not, it is blocked.
a smurf attack is an ip address spoofing denial of service attack named after the exploit program used in the attack. the program sends icmp echo (ping) traffic to servers, which reply to the spoofed address (victim). if enough machines reply to the single spoofed address, it causes a denial of service on the victim. a fraggle attack uses a similar technique. a detailed explanation is here.